botframework-webchat-api 4.18.1-main.20260416.88357ae → 4.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/decorator.js +1 -1
- package/dist/botframework-webchat-api.d.mts +1246 -166
- package/dist/botframework-webchat-api.decorator.d.mts +26 -70
- package/dist/botframework-webchat-api.decorator.mjs +2 -1
- package/dist/botframework-webchat-api.decorator.mjs.LEGAL.txt +0 -0
- package/dist/botframework-webchat-api.decorator.mjs.map +1 -1
- package/dist/botframework-webchat-api.internal.d.mts +1 -57
- package/dist/botframework-webchat-api.internal.mjs +2 -1
- package/dist/botframework-webchat-api.internal.mjs.LEGAL.txt +0 -0
- package/dist/botframework-webchat-api.internal.mjs.map +1 -1
- package/dist/botframework-webchat-api.mjs +139 -1
- package/dist/botframework-webchat-api.mjs.LEGAL.txt +27 -2
- package/dist/botframework-webchat-api.mjs.map +1 -1
- package/dist/chunk-2S76JUVM.mjs +3 -0
- package/dist/chunk-2S76JUVM.mjs.LEGAL.txt +0 -0
- package/dist/chunk-2S76JUVM.mjs.map +1 -0
- package/dist/{chunk-VAX7AB37.mjs → chunk-J6D5YEY6.mjs} +2 -1
- package/dist/chunk-J6D5YEY6.mjs.LEGAL.txt +0 -0
- package/dist/chunk-ZAMHKQQC.mjs +3 -0
- package/dist/chunk-ZAMHKQQC.mjs.LEGAL.txt +0 -0
- package/dist/chunk-ZAMHKQQC.mjs.map +1 -0
- package/dist/metafile-esm.json +1 -1
- package/internal.js +1 -1
- package/{dist/StyleOptions-Bee70Zop.d.mts → lib/StyleOptions.d.ts} +9 -161
- package/lib/StyleOptions.d.ts.map +1 -0
- package/lib/StyleOptions.js +2 -0
- package/lib/decorator/index.d.ts +5 -0
- package/lib/decorator/index.d.ts.map +1 -0
- package/lib/decorator/index.js +28 -0
- package/lib/decorator/private/ActivityBorderDecoratorMiddleware.d.ts +27 -0
- package/lib/decorator/private/ActivityBorderDecoratorMiddleware.d.ts.map +1 -0
- package/lib/decorator/private/ActivityBorderDecoratorMiddleware.js +19 -0
- package/lib/decorator/private/ActivityDecorator.d.ts +9 -0
- package/lib/decorator/private/ActivityDecorator.d.ts.map +1 -0
- package/lib/decorator/private/ActivityDecorator.js +36 -0
- package/lib/decorator/private/DecoratorComposer.d.ts +3 -0
- package/lib/decorator/private/DecoratorComposer.d.ts.map +1 -0
- package/lib/decorator/private/DecoratorComposer.js +13 -0
- package/lib/decorator/private/activityDecoratorRequest.d.ts +6 -0
- package/lib/decorator/private/activityDecoratorRequest.d.ts.map +1 -0
- package/lib/decorator/private/activityDecoratorRequest.js +2 -0
- package/lib/decorator/private/createDecoratorComposer.d.ts +11 -0
- package/lib/decorator/private/createDecoratorComposer.d.ts.map +1 -0
- package/lib/decorator/private/createDecoratorComposer.js +27 -0
- package/lib/decorator/private/templateMiddleware.d.ts +30 -0
- package/lib/decorator/private/templateMiddleware.d.ts.map +1 -0
- package/lib/decorator/private/templateMiddleware.js +53 -0
- package/lib/decorator/private/templateMiddleware.test.d.ts +3 -0
- package/lib/decorator/private/templateMiddleware.test.d.ts.map +1 -0
- package/lib/defaultStyleOptions.d.ts +4 -0
- package/lib/defaultStyleOptions.d.ts.map +1 -0
- package/lib/defaultStyleOptions.js +277 -0
- package/lib/external/PrecompiledGlobalize.js +6361 -0
- package/lib/hooks/Composer.d.ts +88 -0
- package/lib/hooks/Composer.d.ts.map +1 -0
- package/lib/hooks/Composer.js +605 -0
- package/lib/hooks/index.d.ts +73 -0
- package/lib/hooks/index.d.ts.map +1 -0
- package/lib/hooks/index.js +504 -0
- package/lib/hooks/internal/ErrorBox.js +47 -0
- package/lib/hooks/internal/SendBoxMiddleware.d.ts +37 -0
- package/lib/hooks/internal/SendBoxMiddleware.d.ts.map +1 -0
- package/lib/hooks/internal/SendBoxMiddleware.js +17 -0
- package/lib/hooks/internal/SendBoxToolbarMiddleware.d.ts +37 -0
- package/lib/hooks/internal/SendBoxToolbarMiddleware.d.ts.map +1 -0
- package/lib/hooks/internal/SendBoxToolbarMiddleware.js +17 -0
- package/lib/hooks/internal/Tracker.d.ts +4 -0
- package/lib/hooks/internal/Tracker.d.ts.map +1 -0
- package/lib/hooks/internal/Tracker.js +15 -0
- package/lib/hooks/internal/WebChatAPIContext.d.ts +80 -0
- package/lib/hooks/internal/WebChatAPIContext.d.ts.map +1 -0
- package/lib/hooks/internal/WebChatAPIContext.js +12 -0
- package/lib/hooks/internal/WebChatReduxContext.js +17 -0
- package/lib/hooks/internal/defaultSelectVoice.js +28 -0
- package/lib/hooks/internal/private/templateMiddleware.d.ts +3 -0
- package/lib/hooks/internal/private/templateMiddleware.d.ts.map +1 -0
- package/lib/hooks/internal/private/templateMiddleware.js +12 -0
- package/lib/hooks/internal/useCreateActivityRendererInternal.d.ts +4 -0
- package/lib/hooks/internal/useCreateActivityRendererInternal.d.ts.map +1 -0
- package/lib/hooks/internal/useCreateActivityRendererInternal.js +37 -0
- package/lib/hooks/internal/useDebugDeps.js +39 -0
- package/lib/hooks/internal/useDirFromProps.js +12 -0
- package/lib/hooks/internal/useErrorBoxClass.js +14 -0
- package/lib/hooks/internal/useForceRender.js +24 -0
- package/lib/hooks/internal/useLocalizedGlobalize.js +12 -0
- package/lib/hooks/internal/useLocalizedStrings.js +14 -0
- package/lib/hooks/internal/useMarkActivity.js +12 -0
- package/lib/hooks/internal/usePrevious.d.ts +3 -0
- package/lib/hooks/internal/usePrevious.d.ts.map +1 -0
- package/lib/hooks/internal/usePrevious.js +15 -0
- package/lib/hooks/internal/useReadTelemetryDimensions.js +20 -0
- package/lib/hooks/internal/useSetDictateState.d.ts +2 -0
- package/lib/hooks/internal/useSetDictateState.d.ts.map +1 -0
- package/lib/hooks/internal/useSetDictateState.js +12 -0
- package/lib/hooks/internal/useTimer.d.ts +5 -0
- package/lib/hooks/internal/useTimer.d.ts.map +1 -0
- package/lib/hooks/internal/useTimer.js +43 -0
- package/lib/hooks/internal/useTracker.js +42 -0
- 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 +22 -0
- package/lib/hooks/internal/useWebChatAPIContext.d.ts +83 -0
- package/lib/hooks/internal/useWebChatAPIContext.d.ts.map +1 -0
- package/lib/hooks/internal/useWebChatAPIContext.js +17 -0
- package/lib/hooks/middleware/UserlandBoundary.js +48 -0
- package/lib/hooks/middleware/applyMiddleware.js +122 -0
- package/lib/hooks/middleware/concatMiddleware.d.ts +6 -0
- package/lib/hooks/middleware/concatMiddleware.d.ts.map +1 -0
- package/lib/hooks/middleware/concatMiddleware.js +33 -0
- package/lib/hooks/middleware/createDefaultCardActionMiddleware.d.ts +3 -0
- package/lib/hooks/middleware/createDefaultCardActionMiddleware.d.ts.map +1 -0
- package/lib/hooks/middleware/createDefaultCardActionMiddleware.js +43 -0
- package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.d.ts +7 -0
- package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.d.ts.map +1 -0
- package/lib/hooks/middleware/createDefaultGroupActivitiesMiddleware.js +68 -0
- package/lib/hooks/private/numberWithInfinity.d.ts +3 -0
- package/lib/hooks/private/numberWithInfinity.d.ts.map +1 -0
- package/lib/hooks/private/numberWithInfinity.js +17 -0
- package/lib/hooks/private/numberWithInfinity.spec.d.ts +2 -0
- package/lib/hooks/private/numberWithInfinity.spec.d.ts.map +1 -0
- package/lib/hooks/private/reduceIterable.d.ts +2 -0
- package/lib/hooks/private/reduceIterable.d.ts.map +1 -0
- package/lib/hooks/private/reduceIterable.js +26 -0
- package/lib/hooks/private/reduceIterable.spec.d.ts +2 -0
- package/lib/hooks/private/reduceIterable.spec.d.ts.map +1 -0
- package/lib/hooks/useActiveTyping.d.ts +4 -0
- package/lib/hooks/useActiveTyping.d.ts.map +1 -0
- package/lib/hooks/useActiveTyping.js +81 -0
- package/lib/hooks/useActivities.d.ts +3 -0
- package/lib/hooks/useActivities.d.ts.map +1 -0
- package/lib/hooks/useActivities.js +14 -0
- package/lib/hooks/useActivityKeys.d.ts +3 -0
- package/lib/hooks/useActivityKeys.d.ts.map +1 -0
- package/lib/hooks/useActivityKeys.js +11 -0
- package/lib/hooks/useActivityKeysByRead.d.ts +3 -0
- package/lib/hooks/useActivityKeysByRead.d.ts.map +1 -0
- package/lib/hooks/useActivityKeysByRead.js +11 -0
- package/lib/hooks/useAvatarForBot.d.ts +5 -0
- package/lib/hooks/useAvatarForBot.d.ts.map +1 -0
- package/lib/hooks/useAvatarForBot.js +26 -0
- package/lib/hooks/useAvatarForUser.d.ts +5 -0
- package/lib/hooks/useAvatarForUser.d.ts.map +1 -0
- package/lib/hooks/useAvatarForUser.js +26 -0
- package/lib/hooks/useByteFormatter.d.ts +2 -0
- package/lib/hooks/useByteFormatter.d.ts.map +1 -0
- package/lib/hooks/useByteFormatter.js +43 -0
- package/lib/hooks/useConnectivityStatus.d.ts +2 -0
- package/lib/hooks/useConnectivityStatus.d.ts.map +1 -0
- package/lib/hooks/useConnectivityStatus.js +14 -0
- package/lib/hooks/useCreateActivityRenderer.d.ts +3 -0
- package/lib/hooks/useCreateActivityRenderer.d.ts.map +1 -0
- package/lib/hooks/useCreateActivityRenderer.js +14 -0
- package/lib/hooks/useCreateActivityStatusRenderer.d.ts +10 -0
- package/lib/hooks/useCreateActivityStatusRenderer.d.ts.map +1 -0
- package/lib/hooks/useCreateActivityStatusRenderer.js +72 -0
- package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.d.ts +3 -0
- package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.d.ts.map +1 -0
- package/lib/hooks/useCreateAttachmentForScreenReaderRenderer.js +12 -0
- package/lib/hooks/useCreateAvatarRenderer.d.ts +6 -0
- package/lib/hooks/useCreateAvatarRenderer.d.ts.map +1 -0
- package/lib/hooks/useCreateAvatarRenderer.js +44 -0
- package/lib/hooks/useCreateScrollToEndButtonRenderer.d.ts +3 -0
- package/lib/hooks/useCreateScrollToEndButtonRenderer.d.ts.map +1 -0
- package/lib/hooks/useCreateScrollToEndButtonRenderer.js +12 -0
- package/lib/hooks/useDateFormatter.d.ts +2 -0
- package/lib/hooks/useDateFormatter.d.ts.map +1 -0
- package/lib/hooks/useDateFormatter.js +35 -0
- package/lib/hooks/useDebouncedNotifications.d.ts +13 -0
- package/lib/hooks/useDebouncedNotifications.d.ts.map +1 -0
- package/lib/hooks/useDebouncedNotifications.js +118 -0
- package/lib/hooks/useDictateInterims.d.ts +2 -0
- package/lib/hooks/useDictateInterims.d.ts.map +1 -0
- package/lib/hooks/useDictateInterims.js +16 -0
- package/lib/hooks/useDictateState.d.ts +2 -0
- package/lib/hooks/useDictateState.d.ts.map +1 -0
- package/lib/hooks/useDictateState.js +15 -0
- package/lib/hooks/useDirection.d.ts +2 -0
- package/lib/hooks/useDirection.d.ts.map +1 -0
- package/lib/hooks/useDirection.js +38 -0
- package/lib/hooks/useDisabled.d.ts +2 -0
- package/lib/hooks/useDisabled.d.ts.map +1 -0
- package/lib/hooks/useDisabled.js +12 -0
- package/lib/hooks/useDismissNotification.d.ts +2 -0
- package/lib/hooks/useDismissNotification.d.ts.map +1 -0
- package/lib/hooks/useDismissNotification.js +12 -0
- package/lib/hooks/useEmitTypingIndicator.d.ts +2 -0
- package/lib/hooks/useEmitTypingIndicator.d.ts.map +1 -0
- package/lib/hooks/useEmitTypingIndicator.js +12 -0
- package/lib/hooks/useGetActivitiesByKey.d.ts +3 -0
- package/lib/hooks/useGetActivitiesByKey.d.ts.map +1 -0
- package/lib/hooks/useGetActivitiesByKey.js +11 -0
- package/lib/hooks/useGetActivityByKey.d.ts +3 -0
- package/lib/hooks/useGetActivityByKey.d.ts.map +1 -0
- package/lib/hooks/useGetActivityByKey.js +11 -0
- package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts +3 -0
- package/lib/hooks/useGetHasAcknowledgedByActivityKey.d.ts.map +1 -0
- package/lib/hooks/useGetHasAcknowledgedByActivityKey.js +11 -0
- package/lib/hooks/useGetKeyByActivity.d.ts +3 -0
- package/lib/hooks/useGetKeyByActivity.d.ts.map +1 -0
- package/lib/hooks/useGetKeyByActivity.js +11 -0
- package/lib/hooks/useGetKeyByActivityId.d.ts +3 -0
- package/lib/hooks/useGetKeyByActivityId.d.ts.map +1 -0
- package/lib/hooks/useGetKeyByActivityId.js +11 -0
- package/lib/hooks/useGetSendTimeoutForActivity.d.ts +5 -0
- package/lib/hooks/useGetSendTimeoutForActivity.d.ts.map +1 -0
- package/lib/hooks/useGetSendTimeoutForActivity.js +33 -0
- package/lib/hooks/useGrammars.d.ts +2 -0
- package/lib/hooks/useGrammars.d.ts.map +1 -0
- package/lib/hooks/useGrammars.js +12 -0
- package/lib/hooks/useGroupActivities.d.ts +8 -0
- package/lib/hooks/useGroupActivities.d.ts.map +1 -0
- package/lib/hooks/useGroupActivities.js +12 -0
- package/lib/hooks/useGroupTimestamp.d.ts +2 -0
- package/lib/hooks/useGroupTimestamp.d.ts.map +1 -0
- package/lib/hooks/useGroupTimestamp.js +21 -0
- package/lib/hooks/useLanguage.d.ts +2 -0
- package/lib/hooks/useLanguage.d.ts.map +1 -0
- package/lib/hooks/useLanguage.js +19 -0
- package/lib/hooks/useLastAcknowledgedActivityKey.d.ts +3 -0
- package/lib/hooks/useLastAcknowledgedActivityKey.d.ts.map +1 -0
- package/lib/hooks/useLastAcknowledgedActivityKey.js +11 -0
- package/lib/hooks/useLastReadActivityKey.d.ts +3 -0
- package/lib/hooks/useLastReadActivityKey.d.ts.map +1 -0
- package/lib/hooks/useLastReadActivityKey.js +11 -0
- package/lib/hooks/useLocalizer.d.ts +13 -0
- package/lib/hooks/useLocalizer.d.ts.map +1 -0
- package/lib/hooks/useLocalizer.js +75 -0
- package/lib/hooks/useMarkActivityAsSpoken.d.ts +3 -0
- package/lib/hooks/useMarkActivityAsSpoken.d.ts.map +1 -0
- package/lib/hooks/useMarkActivityAsSpoken.js +16 -0
- package/lib/hooks/useMarkActivityKeyAsRead.d.ts +3 -0
- package/lib/hooks/useMarkActivityKeyAsRead.d.ts.map +1 -0
- package/lib/hooks/useMarkActivityKeyAsRead.js +11 -0
- package/lib/hooks/useMarkAllAsAcknowledged.d.ts +3 -0
- package/lib/hooks/useMarkAllAsAcknowledged.d.ts.map +1 -0
- package/lib/hooks/useMarkAllAsAcknowledged.js +11 -0
- package/lib/hooks/useNotifications.d.ts +3 -0
- package/lib/hooks/useNotifications.d.ts.map +1 -0
- package/lib/hooks/useNotifications.js +14 -0
- package/lib/hooks/usePerformCardAction.d.ts +3 -0
- package/lib/hooks/usePerformCardAction.d.ts.map +1 -0
- package/lib/hooks/usePerformCardAction.js +12 -0
- package/lib/hooks/usePonyfill.d.ts +3 -0
- package/lib/hooks/usePonyfill.d.ts.map +1 -0
- package/lib/hooks/usePonyfill.js +11 -0
- package/lib/hooks/usePostActivity.d.ts +3 -0
- package/lib/hooks/usePostActivity.d.ts.map +1 -0
- package/lib/hooks/usePostActivity.js +12 -0
- package/lib/hooks/useReferenceGrammarID.d.ts +2 -0
- package/lib/hooks/useReferenceGrammarID.d.ts.map +1 -0
- package/lib/hooks/useReferenceGrammarID.js +14 -0
- package/lib/hooks/useRelativeTimeFormatter.d.ts +2 -0
- package/lib/hooks/useRelativeTimeFormatter.d.ts.map +1 -0
- package/lib/hooks/useRelativeTimeFormatter.js +61 -0
- package/lib/hooks/useRenderAttachment.d.ts +3 -0
- package/lib/hooks/useRenderAttachment.d.ts.map +1 -0
- package/lib/hooks/useRenderAttachment.js +14 -0
- package/lib/hooks/useRenderToast.d.ts +3 -0
- package/lib/hooks/useRenderToast.d.ts.map +1 -0
- package/lib/hooks/useRenderToast.js +12 -0
- package/lib/hooks/useRenderTypingIndicator.d.ts +3 -0
- package/lib/hooks/useRenderTypingIndicator.d.ts.map +1 -0
- package/lib/hooks/useRenderTypingIndicator.js +12 -0
- package/lib/hooks/useSendBoxAttachments.d.ts +6 -0
- package/lib/hooks/useSendBoxAttachments.d.ts.map +1 -0
- package/lib/hooks/useSendBoxAttachments.js +23 -0
- package/lib/hooks/useSendBoxValue.d.ts +2 -0
- package/lib/hooks/useSendBoxValue.d.ts.map +1 -0
- package/lib/hooks/useSendBoxValue.js +16 -0
- package/lib/hooks/useSendEvent.d.ts +2 -0
- package/lib/hooks/useSendEvent.d.ts.map +1 -0
- package/lib/hooks/useSendEvent.js +12 -0
- package/lib/hooks/useSendFiles.d.ts +10 -0
- package/lib/hooks/useSendFiles.d.ts.map +1 -0
- package/lib/hooks/useSendFiles.js +35 -0
- package/lib/hooks/useSendMessage.d.ts +6 -0
- package/lib/hooks/useSendMessage.d.ts.map +1 -0
- package/lib/hooks/useSendMessage.js +33 -0
- package/lib/hooks/useSendMessageBack.d.ts +2 -0
- package/lib/hooks/useSendMessageBack.d.ts.map +1 -0
- package/lib/hooks/useSendMessageBack.js +12 -0
- package/lib/hooks/useSendPostBack.d.ts +2 -0
- package/lib/hooks/useSendPostBack.d.ts.map +1 -0
- package/lib/hooks/useSendPostBack.js +12 -0
- package/lib/hooks/useSendStatusByActivityKey.d.ts +22 -0
- package/lib/hooks/useSendStatusByActivityKey.d.ts.map +1 -0
- package/lib/hooks/useSendStatusByActivityKey.js +31 -0
- package/lib/hooks/useSendTimeoutForActivity.d.ts +4 -0
- package/lib/hooks/useSendTimeoutForActivity.d.ts.map +1 -0
- package/lib/hooks/useSendTimeoutForActivity.js +22 -0
- package/lib/hooks/useSendTypingIndicator.d.ts +2 -0
- package/lib/hooks/useSendTypingIndicator.d.ts.map +1 -0
- package/lib/hooks/useSendTypingIndicator.js +14 -0
- package/lib/hooks/useSetNotification.d.ts +3 -0
- package/lib/hooks/useSetNotification.d.ts.map +1 -0
- package/lib/hooks/useSetNotification.js +12 -0
- package/lib/hooks/useShouldSpeakIncomingActivity.d.ts +2 -0
- package/lib/hooks/useShouldSpeakIncomingActivity.d.ts.map +1 -0
- package/lib/hooks/useShouldSpeakIncomingActivity.js +22 -0
- package/lib/hooks/useStartDictate.d.ts +2 -0
- package/lib/hooks/useStartDictate.d.ts.map +1 -0
- package/lib/hooks/useStartDictate.js +12 -0
- package/lib/hooks/useStopDictate.d.ts +2 -0
- package/lib/hooks/useStopDictate.d.ts.map +1 -0
- package/lib/hooks/useStopDictate.js +12 -0
- package/lib/hooks/useStyleOptions.d.ts +3 -0
- package/lib/hooks/useStyleOptions.d.ts.map +1 -0
- package/lib/hooks/useStyleOptions.js +12 -0
- package/lib/hooks/useSubmitSendBox.d.ts +4 -0
- package/lib/hooks/useSubmitSendBox.d.ts.map +1 -0
- package/lib/hooks/useSubmitSendBox.js +49 -0
- package/lib/hooks/useSuggestedActions.d.ts +3 -0
- package/lib/hooks/useSuggestedActions.d.ts.map +1 -0
- package/lib/hooks/useSuggestedActions.js +25 -0
- package/lib/hooks/useTimeoutForSend.d.ts +3 -0
- package/lib/hooks/useTimeoutForSend.d.ts.map +1 -0
- package/lib/hooks/useTimeoutForSend.js +21 -0
- package/lib/hooks/useTrackDimension.d.ts +2 -0
- package/lib/hooks/useTrackDimension.d.ts.map +1 -0
- package/lib/hooks/useTrackDimension.js +14 -0
- package/lib/hooks/useTrackEvent.d.ts +10 -0
- package/lib/hooks/useTrackEvent.d.ts.map +1 -0
- package/lib/hooks/useTrackEvent.js +51 -0
- package/lib/hooks/useTrackException.d.ts +2 -0
- package/lib/hooks/useTrackException.d.ts.map +1 -0
- package/lib/hooks/useTrackException.js +31 -0
- package/lib/hooks/useTrackTiming.d.ts +2 -0
- package/lib/hooks/useTrackTiming.d.ts.map +1 -0
- package/lib/hooks/useTrackTiming.js +93 -0
- package/lib/hooks/useUserID.d.ts +2 -0
- package/lib/hooks/useUserID.d.ts.map +1 -0
- package/lib/hooks/useUserID.js +12 -0
- package/lib/hooks/useUsername.d.ts +2 -0
- package/lib/hooks/useUsername.d.ts.map +1 -0
- package/lib/hooks/useUsername.js +12 -0
- package/lib/hooks/useVoiceSelector.d.ts +2 -0
- package/lib/hooks/useVoiceSelector.d.ts.map +1 -0
- package/lib/hooks/useVoiceSelector.js +16 -0
- package/lib/hooks/utils/ErrorBoundary.js +68 -0
- package/lib/hooks/utils/observableToPromise.d.ts +3 -0
- package/lib/hooks/utils/observableToPromise.d.ts.map +1 -0
- package/lib/hooks/utils/observableToPromise.js +28 -0
- package/lib/index.d.ts +37 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +88 -0
- package/lib/internal.d.ts +3 -0
- package/lib/internal.d.ts.map +1 -0
- package/lib/internal.js +14 -0
- package/lib/localization/Localize.d.ts +4 -0
- package/lib/localization/Localize.d.ts.map +1 -0
- package/lib/localization/Localize.js +50 -0
- package/lib/localization/ar-EG.json +42 -0
- package/lib/localization/ar-JO.json +45 -0
- package/lib/localization/ar-SA.json +112 -0
- package/lib/localization/bg-BG.json +112 -0
- package/lib/localization/ca-ES.json +112 -0
- package/lib/localization/cs-CZ.json +112 -0
- package/lib/localization/da-DK.json +112 -0
- package/lib/localization/de-DE.json +112 -0
- package/lib/localization/el-GR.json +112 -0
- package/lib/localization/en-US.json +183 -0
- package/lib/localization/es-ES.json +112 -0
- package/lib/localization/et-EE.json +112 -0
- package/lib/localization/eu-ES.json +112 -0
- package/lib/localization/fi-FI.json +112 -0
- package/lib/localization/fr-FR.json +112 -0
- package/lib/localization/getAllLocalizedStrings.d.ts +6 -0
- package/lib/localization/getAllLocalizedStrings.d.ts.map +1 -0
- package/lib/localization/getAllLocalizedStrings.js +117 -0
- package/lib/localization/getRTLList.d.ts +2 -0
- package/lib/localization/getRTLList.d.ts.map +1 -0
- package/lib/localization/getRTLList.js +46 -0
- package/lib/localization/gl-ES.json +112 -0
- package/lib/localization/he-IL.json +112 -0
- package/lib/localization/hi-IN.json +112 -0
- package/lib/localization/hr-HR.json +112 -0
- package/lib/localization/hu-HU.json +112 -0
- package/lib/localization/id-ID.json +112 -0
- package/lib/localization/it-IT.json +112 -0
- package/lib/localization/ja-JP.json +112 -0
- package/lib/localization/kk-KZ.json +112 -0
- package/lib/localization/ko-KR.json +112 -0
- package/lib/localization/lt-LT.json +112 -0
- package/lib/localization/lv-LV.json +112 -0
- package/lib/localization/mergeLocalizedStrings.d.ts +7 -0
- package/lib/localization/mergeLocalizedStrings.d.ts.map +1 -0
- package/lib/localization/mergeLocalizedStrings.js +49 -0
- package/lib/localization/ms-MY.json +112 -0
- package/lib/localization/nb-NO.json +112 -0
- package/lib/localization/nl-NL.json +112 -0
- package/lib/localization/overrides.json +257 -0
- package/lib/localization/pl-PL.json +112 -0
- package/lib/localization/pt-BR.json +112 -0
- package/lib/localization/pt-PT.json +112 -0
- package/lib/localization/ro-RO.json +112 -0
- package/lib/localization/ru-RU.json +112 -0
- package/lib/localization/sk-SK.json +112 -0
- package/lib/localization/sl-SI.json +112 -0
- package/lib/localization/sl-SL.json +3 -0
- package/lib/localization/sr-Cyrl-CS.json +112 -0
- package/lib/localization/sr-Cyrl.json +3 -0
- package/lib/localization/sr-Latn-CS.json +112 -0
- package/lib/localization/sr-Latn.json +3 -0
- package/lib/localization/sv-SE.json +112 -0
- package/lib/localization/th-TH.json +112 -0
- package/lib/localization/tr-TR.json +112 -0
- package/lib/localization/uk-UA.json +112 -0
- package/lib/localization/vi-VN.json +112 -0
- package/lib/localization/yue.json +115 -0
- package/lib/localization/zh-CN.json +112 -0
- package/lib/localization/zh-HK.json +112 -0
- package/lib/localization/zh-TW.json +112 -0
- package/lib/normalizeStyleOptions.d.ts +3 -0
- package/lib/normalizeStyleOptions.d.ts.map +1 -0
- package/lib/normalizeStyleOptions.js +147 -0
- package/lib/patchStyleOptionsFromDeprecatedProps.js +21 -0
- package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts +6 -0
- package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/ActivityAcknowledgementComposer.js +153 -0
- package/lib/providers/ActivityAcknowledgement/private/Context.d.ts +13 -0
- package/lib/providers/ActivityAcknowledgement/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/private/Context.js +14 -0
- package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts +3 -0
- package/lib/providers/ActivityAcknowledgement/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/private/useContext.js +18 -0
- package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts +5 -0
- package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useActivityKeysByRead.js +15 -0
- package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts +2 -0
- package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useGetHasAcknowledgedByActivityKey.js +12 -0
- package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts +2 -0
- package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useLastAcknowledgedActivityKey.js +12 -0
- package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts +2 -0
- package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useLastReadActivityKey.js +12 -0
- package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts +2 -0
- package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useMarkActivityKeyAsRead.js +12 -0
- package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts +2 -0
- package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.d.ts.map +1 -0
- package/lib/providers/ActivityAcknowledgement/useMarkAllAsAcknowledged.js +12 -0
- package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts +20 -0
- package/lib/providers/ActivityKeyer/ActivityKeyerComposer.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/ActivityKeyerComposer.js +149 -0
- package/lib/providers/ActivityKeyer/private/Context.d.ts +13 -0
- package/lib/providers/ActivityKeyer/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/Context.js +10 -0
- package/lib/providers/ActivityKeyer/private/getActivityId.d.ts +3 -0
- package/lib/providers/ActivityKeyer/private/getActivityId.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/getActivityId.js +10 -0
- package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts +3 -0
- package/lib/providers/ActivityKeyer/private/getClientActivityId.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/getClientActivityId.js +11 -0
- package/lib/providers/ActivityKeyer/private/lastOf.d.ts +2 -0
- package/lib/providers/ActivityKeyer/private/lastOf.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/lastOf.js +10 -0
- package/lib/providers/ActivityKeyer/private/lastOf.spec.d.ts +2 -0
- package/lib/providers/ActivityKeyer/private/lastOf.spec.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/someIterable.d.ts +2 -0
- package/lib/providers/ActivityKeyer/private/someIterable.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/someIterable.js +27 -0
- package/lib/providers/ActivityKeyer/private/someIterable.spec.d.ts +2 -0
- package/lib/providers/ActivityKeyer/private/someIterable.spec.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/uniqueId.d.ts +2 -0
- package/lib/providers/ActivityKeyer/private/uniqueId.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/uniqueId.js +15 -0
- package/lib/providers/ActivityKeyer/private/useContext.d.ts +3 -0
- package/lib/providers/ActivityKeyer/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/private/useContext.js +18 -0
- package/lib/providers/ActivityKeyer/useActivityKeys.d.ts +2 -0
- package/lib/providers/ActivityKeyer/useActivityKeys.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/useActivityKeys.js +12 -0
- package/lib/providers/ActivityKeyer/useGetActivitiesByKey.d.ts +3 -0
- package/lib/providers/ActivityKeyer/useGetActivitiesByKey.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/useGetActivitiesByKey.js +12 -0
- package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts +3 -0
- package/lib/providers/ActivityKeyer/useGetActivityByKey.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/useGetActivityByKey.js +12 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts +3 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivity.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivity.js +12 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts +2 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivityId.d.ts.map +1 -0
- package/lib/providers/ActivityKeyer/useGetKeyByActivityId.js +12 -0
- package/lib/providers/ActivityListener/ActivityListenerComposer.d.ts +7 -0
- package/lib/providers/ActivityListener/ActivityListenerComposer.d.ts.map +1 -0
- package/lib/providers/ActivityListener/ActivityListenerComposer.js +55 -0
- package/lib/providers/ActivityListener/private/Context.d.ts +8 -0
- package/lib/providers/ActivityListener/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivityListener/private/Context.js +15 -0
- package/lib/providers/ActivityListener/private/useContext.d.ts +2 -0
- package/lib/providers/ActivityListener/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivityListener/private/useContext.js +13 -0
- package/lib/providers/ActivityListener/useUpsertedActivities.d.ts +3 -0
- package/lib/providers/ActivityListener/useUpsertedActivities.d.ts.map +1 -0
- package/lib/providers/ActivityListener/useUpsertedActivities.js +12 -0
- package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.d.ts +4 -0
- package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatus/ActivitySendStatusComposer.js +149 -0
- package/lib/providers/ActivitySendStatus/private/Context.d.ts +9 -0
- package/lib/providers/ActivitySendStatus/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatus/private/Context.js +13 -0
- package/lib/providers/ActivitySendStatus/private/isMapEqual.d.ts +7 -0
- package/lib/providers/ActivitySendStatus/private/isMapEqual.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatus/private/isMapEqual.js +55 -0
- package/lib/providers/ActivitySendStatus/private/useContext.d.ts +3 -0
- package/lib/providers/ActivitySendStatus/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatus/private/useContext.js +18 -0
- package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.d.ts +22 -0
- package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatus/useSendStatusByActivityKey.js +31 -0
- package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.d.ts +3 -0
- package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.d.ts.map +1 -0
- package/lib/providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer.js +71 -0
- package/lib/providers/ActivityTyping/ActivityTypingComposer.d.ts +9 -0
- package/lib/providers/ActivityTyping/ActivityTypingComposer.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/ActivityTypingComposer.js +98 -0
- package/lib/providers/ActivityTyping/private/Context.d.ts +8 -0
- package/lib/providers/ActivityTyping/private/Context.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/private/Context.js +15 -0
- package/lib/providers/ActivityTyping/private/useContext.d.ts +3 -0
- package/lib/providers/ActivityTyping/private/useContext.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/private/useContext.js +13 -0
- package/lib/providers/ActivityTyping/private/useMemoWithPrevious.d.ts +3 -0
- package/lib/providers/ActivityTyping/private/useMemoWithPrevious.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/private/useMemoWithPrevious.js +22 -0
- package/lib/providers/ActivityTyping/types/AllTyping.d.ts +9 -0
- package/lib/providers/ActivityTyping/types/AllTyping.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/types/AllTyping.js +2 -0
- package/lib/providers/ActivityTyping/useAllTyping.d.ts +3 -0
- package/lib/providers/ActivityTyping/useAllTyping.d.ts.map +1 -0
- package/lib/providers/ActivityTyping/useAllTyping.js +12 -0
- package/lib/providers/Ponyfill/PonyfillComposer.d.ts +17 -0
- package/lib/providers/Ponyfill/PonyfillComposer.d.ts.map +1 -0
- package/lib/providers/Ponyfill/PonyfillComposer.js +87 -0
- package/lib/providers/Ponyfill/private/PonyfillContext.d.ts +8 -0
- package/lib/providers/Ponyfill/private/PonyfillContext.d.ts.map +1 -0
- package/lib/providers/Ponyfill/private/PonyfillContext.js +10 -0
- package/lib/providers/Ponyfill/private/useContext.d.ts +6 -0
- package/lib/providers/Ponyfill/private/useContext.d.ts.map +1 -0
- package/lib/providers/Ponyfill/private/useContext.js +17 -0
- package/lib/providers/Ponyfill/usePonyfill.d.ts +3 -0
- package/lib/providers/Ponyfill/usePonyfill.d.ts.map +1 -0
- package/lib/providers/Ponyfill/usePonyfill.js +12 -0
- package/lib/tsconfig.json +18 -0
- package/lib/types/ActivityMiddleware.d.ts +24 -0
- package/lib/types/ActivityMiddleware.d.ts.map +1 -0
- package/lib/types/ActivityMiddleware.js +2 -0
- package/lib/types/ActivityStatusMiddleware.d.ts +17 -0
- package/lib/types/ActivityStatusMiddleware.d.ts.map +1 -0
- package/lib/types/ActivityStatusMiddleware.js +2 -0
- package/lib/types/AttachmentForScreenReaderMiddleware.d.ts +14 -0
- package/lib/types/AttachmentForScreenReaderMiddleware.d.ts.map +1 -0
- package/lib/types/AttachmentForScreenReaderMiddleware.js +2 -0
- package/lib/types/AttachmentMiddleware.d.ts +12 -0
- package/lib/types/AttachmentMiddleware.d.ts.map +1 -0
- package/lib/types/AttachmentMiddleware.js +2 -0
- package/lib/types/AvatarMiddleware.d.ts +15 -0
- package/lib/types/AvatarMiddleware.d.ts.map +1 -0
- package/lib/types/AvatarMiddleware.js +2 -0
- package/lib/types/CardActionMiddleware.d.ts +19 -0
- package/lib/types/CardActionMiddleware.d.ts.map +1 -0
- package/lib/types/CardActionMiddleware.js +2 -0
- package/lib/types/ComponentMiddleware.d.ts +31 -0
- package/lib/types/ComponentMiddleware.d.ts.map +1 -0
- package/lib/types/ComponentMiddleware.js +2 -0
- package/lib/types/ContextOf.d.ts +4 -0
- package/lib/types/ContextOf.d.ts.map +1 -0
- package/lib/types/ContextOf.js +2 -0
- package/lib/types/FunctionMiddleware.d.ts +6 -0
- package/lib/types/FunctionMiddleware.d.ts.map +1 -0
- package/lib/types/FunctionMiddleware.js +2 -0
- package/lib/types/GroupActivitiesMiddleware.d.ts +22 -0
- package/lib/types/GroupActivitiesMiddleware.d.ts.map +1 -0
- package/lib/types/GroupActivitiesMiddleware.js +2 -0
- package/lib/types/LocalizedStrings.d.ts +5 -0
- package/lib/types/LocalizedStrings.d.ts.map +1 -0
- package/lib/types/LocalizedStrings.js +2 -0
- package/lib/types/Notification.d.ts +10 -0
- package/lib/types/Notification.d.ts.map +1 -0
- package/lib/types/Notification.js +2 -0
- package/lib/types/PrecompiledGlobalize.d.ts +13 -0
- package/lib/types/PrecompiledGlobalize.d.ts.map +1 -0
- package/lib/types/PrecompiledGlobalize.js +2 -0
- package/lib/types/ScrollToEndButtonMiddleware.d.ts +30 -0
- package/lib/types/ScrollToEndButtonMiddleware.d.ts.map +1 -0
- package/lib/types/ScrollToEndButtonMiddleware.js +2 -0
- package/lib/types/SendStatus.d.ts +3 -0
- package/lib/types/SendStatus.d.ts.map +1 -0
- package/lib/types/SendStatus.js +2 -0
- package/lib/types/TelemetryMeasurementEvent.d.ts +31 -0
- package/lib/types/TelemetryMeasurementEvent.d.ts.map +1 -0
- package/lib/types/TelemetryMeasurementEvent.js +2 -0
- package/lib/types/ToastMiddleware.d.ts +11 -0
- package/lib/types/ToastMiddleware.d.ts.map +1 -0
- package/lib/types/ToastMiddleware.js +2 -0
- package/lib/types/Typing.d.ts +8 -0
- package/lib/types/Typing.d.ts.map +1 -0
- package/lib/types/Typing.js +2 -0
- package/lib/types/TypingIndicatorMiddleware.d.ts +17 -0
- package/lib/types/TypingIndicatorMiddleware.d.ts.map +1 -0
- package/lib/types/TypingIndicatorMiddleware.js +2 -0
- package/lib/types/WebSpeechPonyfill.d.ts +19 -0
- package/lib/types/WebSpeechPonyfill.d.ts.map +1 -0
- package/lib/types/WebSpeechPonyfill.js +2 -0
- package/lib/types/WebSpeechPonyfillFactory.d.ts +6 -0
- package/lib/types/WebSpeechPonyfillFactory.d.ts.map +1 -0
- package/lib/types/WebSpeechPonyfillFactory.js +2 -0
- package/lib/utils/createCustomEvent.d.ts +4 -0
- package/lib/utils/createCustomEvent.d.ts.map +1 -0
- package/lib/utils/createCustomEvent.js +34 -0
- package/lib/utils/findLastIndex.d.ts +2 -0
- package/lib/utils/findLastIndex.d.ts.map +1 -0
- package/lib/utils/findLastIndex.js +22 -0
- package/lib/utils/findMin.d.ts +7 -0
- package/lib/utils/findMin.d.ts.map +1 -0
- package/lib/utils/findMin.js +46 -0
- package/lib/utils/freezeArray.d.ts +8 -0
- package/lib/utils/freezeArray.d.ts.map +1 -0
- package/lib/utils/freezeArray.js +19 -0
- package/lib/utils/isObject.js +12 -0
- package/lib/utils/mapMap.d.ts +6 -0
- package/lib/utils/mapMap.d.ts.map +1 -0
- package/lib/utils/mapMap.js +27 -0
- package/lib/utils/normalizeLanguage.d.ts +2 -0
- package/lib/utils/normalizeLanguage.d.ts.map +1 -0
- package/lib/utils/normalizeLanguage.js +115 -0
- package/lib/utils/randomId.d.ts +2 -0
- package/lib/utils/randomId.d.ts.map +1 -0
- package/lib/utils/randomId.js +15 -0
- package/lib/utils/warnOnce.d.ts +2 -0
- package/lib/utils/warnOnce.d.ts.map +1 -0
- package/lib/utils/warnOnce.js +16 -0
- package/package.json +90 -99
- package/src/StyleOptions.ts +5 -189
- package/src/decorator/index.ts +4 -0
- package/src/decorator/private/ActivityBorderDecoratorMiddleware.ts +31 -0
- package/src/decorator/private/ActivityDecorator.tsx +31 -0
- package/src/decorator/private/DecoratorComposer.tsx +6 -0
- package/src/decorator/private/activityDecoratorRequest.ts +6 -0
- package/src/decorator/private/createDecoratorComposer.tsx +36 -0
- package/src/{middleware → decorator}/private/templateMiddleware.test.tsx +17 -19
- package/src/decorator/private/templateMiddleware.ts +58 -0
- package/src/defaultStyleOptions.ts +7 -40
- package/src/hooks/Composer.tsx +137 -198
- package/src/hooks/index.ts +2 -19
- package/src/hooks/internal/ErrorBox.js +34 -0
- package/src/hooks/internal/SendBoxMiddleware.ts +21 -0
- package/src/hooks/internal/SendBoxToolbarMiddleware.ts +21 -0
- package/src/hooks/internal/Tracker.ts +1 -1
- package/src/hooks/internal/WebChatAPIContext.ts +12 -7
- package/src/hooks/internal/WebChatReduxContext.js +2 -3
- package/src/hooks/internal/private/templateMiddleware.ts +4 -0
- package/src/hooks/internal/useCreateActivityRendererInternal.ts +46 -0
- package/src/hooks/internal/useDebugDeps.js +30 -0
- package/src/hooks/internal/useErrorBoxClass.js +7 -0
- package/src/hooks/middleware/UserlandBoundary.js +2 -2
- package/src/hooks/middleware/applyMiddleware.js +5 -5
- package/src/hooks/middleware/concatMiddleware.spec.js +0 -20
- package/src/hooks/middleware/concatMiddleware.ts +6 -7
- package/src/hooks/middleware/createDefaultGroupActivitiesMiddleware.ts +75 -0
- package/src/hooks/private/reduceIterable.spec.ts +2 -0
- package/src/hooks/useActiveTyping.ts +2 -3
- package/src/hooks/useActivities.ts +3 -62
- package/src/hooks/useCreateActivityRenderer.ts +6 -27
- package/src/hooks/useCreateActivityStatusRenderer.tsx +33 -13
- package/src/hooks/useCreateAvatarRenderer.ts +33 -19
- package/src/hooks/useDebouncedNotifications.spec.js +0 -1
- package/src/hooks/useDisabled.ts +2 -8
- package/src/hooks/useGroupActivities.ts +10 -0
- package/src/hooks/useRenderAttachment.ts +2 -2
- package/src/hooks/useSendBoxAttachments.ts +0 -2
- package/src/hooks/useSendFiles.ts +1 -1
- package/src/hooks/useSendTimeoutForActivity.ts +0 -2
- package/src/hooks/useStyleOptions.ts +6 -1
- package/src/hooks/useSuggestedActions.ts +23 -9
- package/src/index.ts +94 -52
- package/src/internal.ts +3 -0
- package/src/localization/ar-SA.json +111 -134
- package/src/localization/bg-BG.json +111 -134
- package/src/localization/ca-ES.json +111 -134
- package/src/localization/cs-CZ.json +111 -134
- package/src/localization/da-DK.json +111 -134
- package/src/localization/de-DE.json +111 -134
- package/src/localization/el-GR.json +111 -134
- package/src/localization/en-US.json +19 -45
- package/src/localization/es-ES.json +111 -134
- package/src/localization/et-EE.json +111 -134
- package/src/localization/eu-ES.json +111 -134
- package/src/localization/fi-FI.json +111 -134
- package/src/localization/fr-FR.json +111 -134
- package/src/localization/gl-ES.json +111 -134
- package/src/localization/he-IL.json +111 -134
- package/src/localization/hi-IN.json +111 -134
- package/src/localization/hr-HR.json +111 -134
- package/src/localization/hu-HU.json +111 -134
- package/src/localization/id-ID.json +111 -134
- package/src/localization/it-IT.json +111 -134
- package/src/localization/ja-JP.json +111 -134
- package/src/localization/kk-KZ.json +111 -134
- package/src/localization/ko-KR.json +111 -134
- package/src/localization/lt-LT.json +111 -134
- package/src/localization/lv-LV.json +111 -134
- package/src/localization/ms-MY.json +111 -134
- package/src/localization/nb-NO.json +111 -134
- package/src/localization/nl-NL.json +111 -134
- package/src/localization/pl-PL.json +111 -134
- package/src/localization/pt-BR.json +111 -134
- package/src/localization/pt-PT.json +111 -134
- package/src/localization/ro-RO.json +111 -134
- package/src/localization/ru-RU.json +111 -134
- package/src/localization/sk-SK.json +111 -134
- package/src/localization/sl-SI.json +111 -134
- package/src/localization/sr-Cyrl-CS.json +111 -134
- package/src/localization/sr-Latn-CS.json +111 -134
- package/src/localization/sv-SE.json +111 -134
- package/src/localization/th-TH.json +111 -134
- package/src/localization/tr-TR.json +111 -134
- package/src/localization/uk-UA.json +111 -134
- package/src/localization/vi-VN.json +111 -134
- package/src/localization/yue.json +16 -5
- package/src/localization/zh-CN.json +111 -134
- package/src/localization/zh-HK.json +111 -134
- package/src/localization/zh-TW.json +111 -134
- package/src/normalizeStyleOptions.ts +21 -70
- package/src/patchStyleOptionsFromDeprecatedProps.js +0 -9
- package/src/providers/ActivityKeyer/ActivityKeyerComposer.tsx +40 -197
- package/src/providers/ActivityKeyer/private/someIterable.spec.ts +2 -0
- package/src/providers/ActivityListener/ActivityListenerComposer.tsx +1 -1
- package/src/providers/ActivitySendStatus/ActivitySendStatusComposer.tsx +3 -6
- package/src/providers/ActivityTyping/ActivityTypingComposer.tsx +59 -145
- package/src/providers/ActivityTyping/private/useMemoWithPrevious.ts +17 -0
- package/src/tsconfig.json +13 -3
- package/src/types/ActivityMiddleware.ts +36 -0
- package/src/types/ActivityStatusMiddleware.ts +9 -1
- package/src/types/AttachmentForScreenReaderMiddleware.ts +2 -9
- package/src/types/AttachmentMiddleware.ts +16 -0
- package/src/types/AvatarMiddleware.ts +1 -12
- package/src/types/CardActionMiddleware.ts +0 -2
- package/src/types/ComponentMiddleware.ts +1 -1
- package/src/types/GroupActivitiesMiddleware.ts +11 -7
- package/src/utils/warnOnce.ts +10 -0
- package/LICENSE +0 -21
- package/dist/StyleOptions-Bee70Zop.d.ts +0 -849
- package/dist/_dtsroll-chunks/BSWz9ZFy-avatarMiddleware-B0l6i8QF.d.ts +0 -83
- package/dist/_dtsroll-chunks/CDCBhxik-avatarMiddleware-B0l6i8QF.d.ts +0 -98
- package/dist/_dtsroll-chunks/CEcj2Npa-botframework-webchat-redux-store.d.ts +0 -16
- package/dist/_dtsroll-chunks/Dtb0H_Ee-handler-chain.d.ts +0 -4
- package/dist/_dtsroll-chunks/N-ttGLxs-botframework-webchat-base.utils.d.ts +0 -4
- package/dist/_dtsroll-chunks/q-lT10Y_-botframework-webchat-api-middleware.d.ts +0 -215
- package/dist/botframework-webchat-api.d.ts +0 -384
- package/dist/botframework-webchat-api.decorator.d.ts +0 -80
- package/dist/botframework-webchat-api.decorator.js +0 -2
- package/dist/botframework-webchat-api.decorator.js.map +0 -1
- package/dist/botframework-webchat-api.graph.d.mts +0 -5
- package/dist/botframework-webchat-api.graph.d.ts +0 -2
- package/dist/botframework-webchat-api.graph.js +0 -2
- package/dist/botframework-webchat-api.graph.js.map +0 -1
- package/dist/botframework-webchat-api.graph.mjs +0 -2
- package/dist/botframework-webchat-api.hook.d.mts +0 -9
- package/dist/botframework-webchat-api.hook.d.ts +0 -9
- package/dist/botframework-webchat-api.hook.js +0 -2
- package/dist/botframework-webchat-api.hook.js.map +0 -1
- package/dist/botframework-webchat-api.hook.mjs +0 -2
- package/dist/botframework-webchat-api.hook.mjs.map +0 -1
- package/dist/botframework-webchat-api.internal.d.ts +0 -59
- package/dist/botframework-webchat-api.internal.js +0 -2
- package/dist/botframework-webchat-api.internal.js.map +0 -1
- package/dist/botframework-webchat-api.js +0 -2
- package/dist/botframework-webchat-api.js.map +0 -1
- package/dist/botframework-webchat-api.middleware.d.mts +0 -44
- package/dist/botframework-webchat-api.middleware.d.ts +0 -44
- package/dist/botframework-webchat-api.middleware.js +0 -2
- package/dist/botframework-webchat-api.middleware.js.map +0 -1
- package/dist/botframework-webchat-api.middleware.mjs +0 -2
- package/dist/botframework-webchat-api.middleware.mjs.map +0 -1
- package/dist/chunk-2IRRBWXD.js +0 -2
- package/dist/chunk-2IRRBWXD.js.map +0 -1
- package/dist/chunk-4CC4CF3L.mjs +0 -2
- package/dist/chunk-4CC4CF3L.mjs.map +0 -1
- package/dist/chunk-5ETCWTZU.mjs +0 -2
- package/dist/chunk-5ETCWTZU.mjs.map +0 -1
- package/dist/chunk-5X4VJZOM.js +0 -2
- package/dist/chunk-5X4VJZOM.js.map +0 -1
- package/dist/chunk-6UG4W3AA.js +0 -2
- package/dist/chunk-6UG4W3AA.js.map +0 -1
- package/dist/chunk-7GV72C4W.js +0 -2
- package/dist/chunk-7GV72C4W.js.map +0 -1
- package/dist/chunk-7MMWRS2R.js +0 -2
- package/dist/chunk-7MMWRS2R.js.map +0 -1
- package/dist/chunk-A4U2D2CE.js +0 -2
- package/dist/chunk-A4U2D2CE.js.map +0 -1
- package/dist/chunk-CXPZ35K7.mjs +0 -2
- package/dist/chunk-CXPZ35K7.mjs.map +0 -1
- package/dist/chunk-FD7QXXVX.js +0 -2
- package/dist/chunk-FD7QXXVX.js.map +0 -1
- package/dist/chunk-M6YLCIBQ.mjs +0 -2
- package/dist/chunk-M6YLCIBQ.mjs.map +0 -1
- package/dist/chunk-MXSKDQ7V.js +0 -2
- package/dist/chunk-MXSKDQ7V.js.map +0 -1
- package/dist/chunk-NTAQPS75.mjs +0 -2
- package/dist/chunk-NTAQPS75.mjs.map +0 -1
- package/dist/chunk-NW6DC3HN.js +0 -2
- package/dist/chunk-NW6DC3HN.js.map +0 -1
- package/dist/chunk-OT2H52K5.js +0 -2
- package/dist/chunk-OT2H52K5.js.map +0 -1
- package/dist/chunk-P74ZJTC3.mjs +0 -2
- package/dist/chunk-P74ZJTC3.mjs.map +0 -1
- package/dist/chunk-RLEJOP6E.mjs +0 -2
- package/dist/chunk-RLEJOP6E.mjs.map +0 -1
- package/dist/chunk-SHCJFXJD.js +0 -2
- package/dist/chunk-SHCJFXJD.js.map +0 -1
- package/dist/chunk-T4YVMFKP.js +0 -2
- package/dist/chunk-T4YVMFKP.js.map +0 -1
- package/dist/chunk-U4BPKCQU.mjs +0 -2
- package/dist/chunk-U4BPKCQU.mjs.map +0 -1
- package/dist/chunk-VAX7AB37.mjs.map +0 -1
- package/dist/chunk-VNGDFILB.mjs +0 -2
- package/dist/chunk-VNGDFILB.mjs.map +0 -1
- package/dist/chunk-VOKEMAOZ.mjs +0 -2
- package/dist/chunk-VOKEMAOZ.mjs.map +0 -1
- package/dist/chunk-ZFVI4FOP.mjs +0 -2
- package/dist/chunk-ZFVI4FOP.mjs.map +0 -1
- package/dist/hook-C8DMnLlW.d.ts +0 -534
- package/dist/hook-C_R_DybN.d.mts +0 -534
- package/dist/metafile-cjs.json +0 -1
- package/dist/templateMiddleware-BEttHPJk.d.mts +0 -20
- package/dist/templateMiddleware-BEttHPJk.d.ts +0 -20
- package/dist/types-BI1IxyHE.d.mts +0 -227
- package/dist/types-nONiO2zU.d.ts +0 -227
- package/graph.js +0 -3
- package/hook.js +0 -3
- package/middleware.js +0 -3
- package/src/__tests__/addMetaTag.spec.js +0 -9
- package/src/__tests__/addMetaTag.spec.mjs +0 -9
- package/src/boot/decorator.ts +0 -21
- package/src/boot/graph.ts +0 -1
- package/src/boot/hook.ts +0 -82
- package/src/boot/internal.ts +0 -7
- package/src/boot/middleware.ts +0 -60
- package/src/buildInfo.ts +0 -9
- package/src/decorator/ActivityBorder/ActivityBorderDecorator.tsx +0 -57
- package/src/decorator/ActivityBorder/private/ActivityBorderDecoratorMiddleware.ts +0 -34
- package/src/decorator/ActivityBorder/private/ActivityBorderDecoratorRequestContext.ts +0 -48
- package/src/decorator/ActivityGrouping/ActivityGroupingDecorator.tsx +0 -43
- package/src/decorator/ActivityGrouping/private/ActivityGroupingDecoratorMiddleware.ts +0 -40
- package/src/decorator/DecoratorComposer.tsx +0 -51
- package/src/decorator/internal/InternalDecoratorComposer.tsx +0 -33
- package/src/decorator/internal/LowPriorityDecoratorComposer.tsx +0 -19
- package/src/decorator/private/DecoratorComposerContext.ts +0 -16
- package/src/decorator/private/PassthroughFallback.tsx +0 -12
- package/src/decorator/private/templateDecorator.tsx +0 -115
- package/src/decorator/types.ts +0 -4
- package/src/decorator/useDecoratorRequest.ts +0 -15
- package/src/env.d.ts +0 -9
- package/src/errorBox/errorBoxTelemetryPolymiddleware.ts +0 -53
- package/src/hooks/internal/usePostVoiceActivity.ts +0 -18
- package/src/hooks/internal/useRegisterVoiceHandler.ts +0 -23
- package/src/hooks/internal/useShouldShowMicrophoneButton.ts +0 -22
- package/src/hooks/internal/useVoiceHandlers.ts +0 -11
- package/src/hooks/internal/useVoiceStateWritable.ts +0 -18
- package/src/hooks/middleware/activityFallbackPolymiddleware.ts +0 -23
- package/src/hooks/useStartVoice.ts +0 -9
- package/src/hooks/useStopVoice.ts +0 -9
- package/src/hooks/useUIState.ts +0 -18
- package/src/hooks/useVoiceRecordingMuted.ts +0 -24
- package/src/hooks/useVoiceState.ts +0 -15
- package/src/hooks/validation/uiState.parseUIState.spec.ts +0 -21
- package/src/hooks/validation/uiState.ts +0 -10
- package/src/legacy/LegacyActivityBridge.tsx +0 -77
- package/src/legacy/LegacyActivityBridgeContext.ts +0 -23
- package/src/legacy/createActivityPolymiddlewareFromLegacy.tsx +0 -123
- package/src/legacy/createAvatarPolymiddlewareFromLegacy.tsx +0 -102
- package/src/middleware/AvatarPolymiddlewareProxy.tsx +0 -46
- package/src/middleware/SendBoxMiddleware.ts +0 -28
- package/src/middleware/SendBoxToolbarMiddleware.ts +0 -28
- package/src/middleware/private/templateMiddleware.check.test.tsx +0 -47
- package/src/middleware/private/templateMiddleware.tsx +0 -106
- package/src/middleware/useBuildRenderAvatarCallback.ts +0 -37
- package/src/providers/ActivityTyping/private/useReduceActivities.spec.tsx +0 -236
- package/src/providers/ActivityTyping/private/useReduceActivities.ts +0 -49
- package/src/providers/Capabilities/CapabilitiesComposer.tsx +0 -53
- package/src/providers/Capabilities/private/Context.ts +0 -13
- package/src/providers/Capabilities/private/capabilityRegistry.ts +0 -45
- package/src/providers/Capabilities/private/fetchCapabilitiesFromAdapter.ts +0 -59
- package/src/providers/Capabilities/private/shallowEqual.ts +0 -18
- package/src/providers/Capabilities/private/useContext.ts +0 -12
- package/src/providers/Capabilities/types/Capabilities.ts +0 -16
- package/src/providers/Capabilities/useCapabilities.ts +0 -25
- package/src/providers/GroupActivities/GroupActivitiesComposer.tsx +0 -116
- package/src/providers/GroupActivities/private/GroupActivitiesContext.ts +0 -23
- package/src/providers/GroupActivities/private/createDefaultGroupActivitiesMiddleware.ts +0 -113
- package/src/providers/GroupActivities/private/isGroupingValid.ts +0 -41
- package/src/providers/GroupActivities/private/useGroupActivitiesContext.ts +0 -6
- package/src/providers/GroupActivities/useGroupActivities.ts +0 -20
- package/src/providers/GroupActivities/useGroupActivitiesByName.ts +0 -17
- package/src/providers/SpeechToSpeech/SpeechToSpeechComposer.tsx +0 -20
- package/src/providers/SpeechToSpeech/private/VoiceHandlerBridge.tsx +0 -23
- package/src/providers/SpeechToSpeech/private/VoiceRecorderBridge.tsx +0 -49
- package/src/providers/SpeechToSpeech/private/useAudioPlayer.spec.tsx +0 -355
- package/src/providers/SpeechToSpeech/private/useAudioPlayer.ts +0 -92
- package/src/providers/SpeechToSpeech/private/useRecorder.spec.tsx +0 -344
- package/src/providers/SpeechToSpeech/private/useRecorder.ts +0 -220
- package/src/providers/StyleOptions/StyleOptionsComposer.tsx +0 -46
- package/src/providers/StyleOptions/private/StyleOptionsContext.ts +0 -20
- package/src/providers/StyleOptions/private/rectifyStyleOptions.ts +0 -7
- package/src/providers/StyleOptions/useStyleOptions.ts +0 -6
- /package/dist/{botframework-webchat-api.graph.mjs.map → chunk-J6D5YEY6.mjs.map} +0 -0
package/src/hooks/Composer.tsx
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
import { GraphProvider } from '@msinternal/botframework-webchat-api-graph';
|
|
2
|
-
import { PolymiddlewareComposer, type Polymiddleware } from '@msinternal/botframework-webchat-api-middleware';
|
|
3
|
-
import {
|
|
4
|
-
type LegacyActivityMiddleware,
|
|
5
|
-
type LegacyAttachmentMiddleware
|
|
6
|
-
} from '@msinternal/botframework-webchat-api-middleware/legacy';
|
|
7
|
-
import { singleToArray, type OneOrMany } from '@msinternal/botframework-webchat-base/utils';
|
|
8
|
-
import { useMemoIterable } from '@msinternal/botframework-webchat-react-hooks';
|
|
9
|
-
import { ReduxStoreComposer } from '@msinternal/botframework-webchat-redux-store';
|
|
10
1
|
import {
|
|
11
2
|
clearSuggestedActions,
|
|
12
3
|
connect as createConnectAction,
|
|
@@ -29,15 +20,15 @@ import {
|
|
|
29
20
|
setSendBoxAttachments,
|
|
30
21
|
setSendTimeout,
|
|
31
22
|
setSendTypingIndicator,
|
|
23
|
+
singleToArray,
|
|
32
24
|
startDictate,
|
|
33
25
|
startSpeakingActivity,
|
|
34
|
-
startVoiceRecording,
|
|
35
26
|
stopDictate,
|
|
36
27
|
stopSpeakingActivity,
|
|
37
|
-
stopVoiceRecording,
|
|
38
28
|
submitSendBox,
|
|
39
29
|
type DirectLineJSBotConnection,
|
|
40
30
|
type GlobalScopePonyfill,
|
|
31
|
+
type OneOrMany,
|
|
41
32
|
type WebChatActivity
|
|
42
33
|
} from 'botframework-webchat-core';
|
|
43
34
|
import PropTypes from 'prop-types';
|
|
@@ -45,34 +36,24 @@ import React, { useCallback, useEffect, useMemo, useRef, useState, type ReactNod
|
|
|
45
36
|
import { Provider } from 'react-redux';
|
|
46
37
|
import updateIn from 'simple-update-in';
|
|
47
38
|
|
|
48
|
-
import
|
|
49
|
-
import errorBoxTelemetryPolymiddleware from '../errorBox/errorBoxTelemetryPolymiddleware';
|
|
50
|
-
import PrecompiledGlobalize from '../external/PrecompiledGlobalize';
|
|
39
|
+
import StyleOptions from '../StyleOptions';
|
|
51
40
|
import usePonyfill from '../hooks/usePonyfill';
|
|
52
|
-
import createActivityPolymiddlewareFromLegacy from '../legacy/createActivityPolymiddlewareFromLegacy';
|
|
53
|
-
import createAvatarPolymiddlewareFromLegacy from '../legacy/createAvatarPolymiddlewareFromLegacy';
|
|
54
41
|
import getAllLocalizedStrings from '../localization/getAllLocalizedStrings';
|
|
55
|
-
import
|
|
56
|
-
import
|
|
57
|
-
SendBoxToolbarMiddlewareProvider,
|
|
58
|
-
type SendBoxToolbarMiddleware
|
|
59
|
-
} from '../middleware/SendBoxToolbarMiddleware';
|
|
42
|
+
import normalizeStyleOptions from '../normalizeStyleOptions';
|
|
43
|
+
import patchStyleOptionsFromDeprecatedProps from '../patchStyleOptionsFromDeprecatedProps';
|
|
60
44
|
import ActivityAcknowledgementComposer from '../providers/ActivityAcknowledgement/ActivityAcknowledgementComposer';
|
|
61
45
|
import ActivityKeyerComposer from '../providers/ActivityKeyer/ActivityKeyerComposer';
|
|
62
46
|
import ActivityListenerComposer from '../providers/ActivityListener/ActivityListenerComposer';
|
|
63
47
|
import ActivitySendStatusComposer from '../providers/ActivitySendStatus/ActivitySendStatusComposer';
|
|
64
48
|
import ActivitySendStatusTelemetryComposer from '../providers/ActivitySendStatusTelemetry/ActivitySendStatusTelemetryComposer';
|
|
65
49
|
import ActivityTypingComposer from '../providers/ActivityTyping/ActivityTypingComposer';
|
|
66
|
-
import CapabilitiesComposer from '../providers/Capabilities/CapabilitiesComposer';
|
|
67
|
-
import GroupActivitiesComposer from '../providers/GroupActivities/GroupActivitiesComposer';
|
|
68
50
|
import PonyfillComposer from '../providers/Ponyfill/PonyfillComposer';
|
|
69
|
-
import
|
|
70
|
-
import StyleOptionsComposer from '../providers/StyleOptions/StyleOptionsComposer';
|
|
51
|
+
import ActivityMiddleware from '../types/ActivityMiddleware';
|
|
71
52
|
import { type ActivityStatusMiddleware, type RenderActivityStatus } from '../types/ActivityStatusMiddleware';
|
|
72
53
|
import AttachmentForScreenReaderMiddleware from '../types/AttachmentForScreenReaderMiddleware';
|
|
54
|
+
import AttachmentMiddleware from '../types/AttachmentMiddleware';
|
|
73
55
|
import AvatarMiddleware from '../types/AvatarMiddleware';
|
|
74
56
|
import CardActionMiddleware from '../types/CardActionMiddleware';
|
|
75
|
-
import { type ContextOf } from '../types/ContextOf';
|
|
76
57
|
import GroupActivitiesMiddleware from '../types/GroupActivitiesMiddleware';
|
|
77
58
|
import LocalizedStrings from '../types/LocalizedStrings';
|
|
78
59
|
import PrecompiledGlobalizeType from '../types/PrecompiledGlobalize';
|
|
@@ -80,26 +61,30 @@ import ScrollToEndButtonMiddleware, { ScrollToEndButtonComponentFactory } from '
|
|
|
80
61
|
import TelemetryMeasurementEvent, { TelemetryExceptionMeasurementEvent } from '../types/TelemetryMeasurementEvent';
|
|
81
62
|
import ToastMiddleware from '../types/ToastMiddleware';
|
|
82
63
|
import TypingIndicatorMiddleware from '../types/TypingIndicatorMiddleware';
|
|
64
|
+
import { type ContextOf } from '../types/ContextOf';
|
|
83
65
|
import createCustomEvent from '../utils/createCustomEvent';
|
|
84
66
|
import isObject from '../utils/isObject';
|
|
85
67
|
import mapMap from '../utils/mapMap';
|
|
86
68
|
import normalizeLanguage from '../utils/normalizeLanguage';
|
|
69
|
+
import { SendBoxMiddlewareProvider, type SendBoxMiddleware } from './internal/SendBoxMiddleware';
|
|
70
|
+
import { SendBoxToolbarMiddlewareProvider, type SendBoxToolbarMiddleware } from './internal/SendBoxToolbarMiddleware';
|
|
87
71
|
import Tracker from './internal/Tracker';
|
|
88
|
-
import
|
|
72
|
+
import { default as WebChatAPIContext } from './internal/WebChatAPIContext';
|
|
89
73
|
import WebChatReduxContext, { useDispatch } from './internal/WebChatReduxContext';
|
|
90
74
|
import defaultSelectVoice from './internal/defaultSelectVoice';
|
|
91
|
-
import useVoiceHandlers from './internal/useVoiceHandlers';
|
|
92
|
-
import activityFallbackPolymiddleware from './middleware/activityFallbackPolymiddleware';
|
|
93
75
|
import applyMiddleware, {
|
|
94
76
|
forLegacyRenderer as applyMiddlewareForLegacyRenderer,
|
|
95
77
|
forRenderer as applyMiddlewareForRenderer
|
|
96
78
|
} from './middleware/applyMiddleware';
|
|
97
79
|
import createDefaultCardActionMiddleware from './middleware/createDefaultCardActionMiddleware';
|
|
80
|
+
import createDefaultGroupActivitiesMiddleware from './middleware/createDefaultGroupActivitiesMiddleware';
|
|
98
81
|
import useMarkAllAsAcknowledged from './useMarkAllAsAcknowledged';
|
|
99
|
-
import useStyleOptions from './useStyleOptions';
|
|
100
82
|
import ErrorBoundary from './utils/ErrorBoundary';
|
|
101
83
|
import observableToPromise from './utils/observableToPromise';
|
|
102
|
-
|
|
84
|
+
|
|
85
|
+
// PrecompileGlobalize is a generated file and is not ES module. TypeScript don't work with UMD.
|
|
86
|
+
// @ts-ignore
|
|
87
|
+
import PrecompiledGlobalize from '../external/PrecompiledGlobalize';
|
|
103
88
|
|
|
104
89
|
// List of Redux actions factory we are hoisting as Web Chat functions
|
|
105
90
|
const DISPATCHERS = {
|
|
@@ -130,16 +115,14 @@ const EMPTY_ARRAY: readonly [] = Object.freeze([]);
|
|
|
130
115
|
|
|
131
116
|
function createCardActionContext({
|
|
132
117
|
cardActionMiddleware,
|
|
133
|
-
continuous,
|
|
134
118
|
directLine,
|
|
135
119
|
dispatch,
|
|
136
120
|
markAllAsAcknowledged,
|
|
137
121
|
ponyfill
|
|
138
122
|
}: {
|
|
139
123
|
cardActionMiddleware: readonly CardActionMiddleware[];
|
|
140
|
-
continuous: boolean;
|
|
141
124
|
directLine: DirectLineJSBotConnection;
|
|
142
|
-
dispatch:
|
|
125
|
+
dispatch: Function;
|
|
143
126
|
markAllAsAcknowledged: () => void;
|
|
144
127
|
ponyfill: GlobalScopePonyfill;
|
|
145
128
|
}) {
|
|
@@ -153,11 +136,6 @@ function createCardActionContext({
|
|
|
153
136
|
onCardAction: (cardAction, { target }: { target?: any } = {}) => {
|
|
154
137
|
markAllAsAcknowledged();
|
|
155
138
|
|
|
156
|
-
// Stop speech recognition only if under interactive mode.
|
|
157
|
-
if (!continuous) {
|
|
158
|
-
dispatch(stopDictate());
|
|
159
|
-
}
|
|
160
|
-
|
|
161
139
|
return runMiddleware({
|
|
162
140
|
cardAction,
|
|
163
141
|
getSignInUrl:
|
|
@@ -187,6 +165,26 @@ function createCardActionContext({
|
|
|
187
165
|
};
|
|
188
166
|
}
|
|
189
167
|
|
|
168
|
+
function createGroupActivitiesContext({
|
|
169
|
+
groupActivitiesMiddleware,
|
|
170
|
+
groupTimestamp,
|
|
171
|
+
ponyfill
|
|
172
|
+
}: {
|
|
173
|
+
groupActivitiesMiddleware: readonly GroupActivitiesMiddleware[];
|
|
174
|
+
groupTimestamp: boolean | number;
|
|
175
|
+
ponyfill: GlobalScopePonyfill;
|
|
176
|
+
}) {
|
|
177
|
+
const runMiddleware = applyMiddleware(
|
|
178
|
+
'group activities',
|
|
179
|
+
...groupActivitiesMiddleware,
|
|
180
|
+
createDefaultGroupActivitiesMiddleware({ groupTimestamp, ponyfill })
|
|
181
|
+
);
|
|
182
|
+
|
|
183
|
+
return {
|
|
184
|
+
groupActivities: runMiddleware({})
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
|
|
190
188
|
function mergeStringsOverrides(localizedStrings, language, overrideLocalizedStrings) {
|
|
191
189
|
if (!overrideLocalizedStrings) {
|
|
192
190
|
return localizedStrings;
|
|
@@ -213,24 +211,15 @@ function mergeStringsOverrides(localizedStrings, language, overrideLocalizedStri
|
|
|
213
211
|
// Ignoring it in TypeScript version should be safe, as we have `propTypes` version to protect us.
|
|
214
212
|
|
|
215
213
|
type ComposerCoreProps = Readonly<{
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* @deprecated Use `polymiddleware` instead. The `avatarMiddleware` prop is being deprecated, please use `polymiddleware` instead. This prop will be removed on or after 2028-03-16.
|
|
225
|
-
*/
|
|
226
|
-
avatarMiddleware?: OneOrMany<AvatarMiddleware> | undefined;
|
|
227
|
-
cardActionMiddleware?: OneOrMany<CardActionMiddleware> | undefined;
|
|
228
|
-
children?: ReactNode | ((context: ContextOf<React.Context<WebChatAPIContextType>>) => ReactNode);
|
|
214
|
+
activityMiddleware?: OneOrMany<ActivityMiddleware>;
|
|
215
|
+
activityStatusMiddleware?: OneOrMany<ActivityStatusMiddleware>;
|
|
216
|
+
attachmentForScreenReaderMiddleware?: OneOrMany<AttachmentForScreenReaderMiddleware>;
|
|
217
|
+
attachmentMiddleware?: OneOrMany<AttachmentMiddleware>;
|
|
218
|
+
avatarMiddleware?: OneOrMany<AvatarMiddleware>;
|
|
219
|
+
cardActionMiddleware?: OneOrMany<CardActionMiddleware>;
|
|
220
|
+
children?: ReactNode | ((context: ContextOf<typeof WebChatAPIContext>) => ReactNode);
|
|
229
221
|
dir?: string;
|
|
230
222
|
directLine: DirectLineJSBotConnection;
|
|
231
|
-
/**
|
|
232
|
-
* @deprecated Please use `uiState="disabled"` instead. This feature will be removed on or after 2026-09-04.
|
|
233
|
-
*/
|
|
234
223
|
disabled?: boolean;
|
|
235
224
|
downscaleImageToDataURL?: (
|
|
236
225
|
blob: Blob,
|
|
@@ -240,9 +229,9 @@ type ComposerCoreProps = Readonly<{
|
|
|
240
229
|
quality: number
|
|
241
230
|
) => Promise<URL>;
|
|
242
231
|
grammars?: any;
|
|
243
|
-
groupActivitiesMiddleware?: OneOrMany<GroupActivitiesMiddleware
|
|
232
|
+
groupActivitiesMiddleware?: OneOrMany<GroupActivitiesMiddleware>;
|
|
233
|
+
internalErrorBoxClass?: React.Component | Function;
|
|
244
234
|
locale?: string;
|
|
245
|
-
polymiddleware?: readonly Polymiddleware[] | undefined;
|
|
246
235
|
onTelemetry?: (event: TelemetryMeasurementEvent) => void;
|
|
247
236
|
overrideLocalizedStrings?: LocalizedStrings | ((strings: LocalizedStrings, language: string) => LocalizedStrings);
|
|
248
237
|
renderMarkdown?: (
|
|
@@ -250,33 +239,24 @@ type ComposerCoreProps = Readonly<{
|
|
|
250
239
|
newLineOptions: { markdownRespectCRLF: boolean },
|
|
251
240
|
linkOptions: { externalLinkAlt: string }
|
|
252
241
|
) => string;
|
|
253
|
-
scrollToEndButtonMiddleware?: OneOrMany<ScrollToEndButtonMiddleware
|
|
242
|
+
scrollToEndButtonMiddleware?: OneOrMany<ScrollToEndButtonMiddleware>;
|
|
254
243
|
selectVoice?: (voices: (typeof window.SpeechSynthesisVoice)[], activity: WebChatActivity) => void;
|
|
255
244
|
sendBoxMiddleware?: readonly SendBoxMiddleware[] | undefined;
|
|
256
245
|
sendBoxToolbarMiddleware?: readonly SendBoxToolbarMiddleware[] | undefined;
|
|
257
246
|
sendTypingIndicator?: boolean;
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
* Sets the state of the UI.
|
|
262
|
-
*
|
|
263
|
-
* - `undefined` will render normally
|
|
264
|
-
* - `"blueprint"` will render as few UI elements as possible and should be non-functional
|
|
265
|
-
* - Useful for loading scenarios
|
|
266
|
-
* - `"disabled"` will render most UI elements as non-functional
|
|
267
|
-
* - Scrolling may continue to trigger read acknowledgements
|
|
268
|
-
*/
|
|
269
|
-
uiState?: 'blueprint' | 'disabled' | undefined;
|
|
247
|
+
styleOptions?: StyleOptions;
|
|
248
|
+
toastMiddleware?: OneOrMany<ToastMiddleware>;
|
|
249
|
+
typingIndicatorMiddleware?: OneOrMany<TypingIndicatorMiddleware>;
|
|
270
250
|
userID?: string;
|
|
271
251
|
username?: string;
|
|
272
252
|
}>;
|
|
273
253
|
|
|
274
254
|
const ComposerCore = ({
|
|
275
|
-
activityMiddleware
|
|
255
|
+
activityMiddleware,
|
|
276
256
|
activityStatusMiddleware,
|
|
277
257
|
attachmentForScreenReaderMiddleware,
|
|
278
258
|
attachmentMiddleware,
|
|
279
|
-
avatarMiddleware
|
|
259
|
+
avatarMiddleware,
|
|
280
260
|
cardActionMiddleware,
|
|
281
261
|
children,
|
|
282
262
|
dir,
|
|
@@ -284,33 +264,33 @@ const ComposerCore = ({
|
|
|
284
264
|
disabled,
|
|
285
265
|
downscaleImageToDataURL,
|
|
286
266
|
grammars,
|
|
287
|
-
groupActivitiesMiddleware
|
|
267
|
+
groupActivitiesMiddleware,
|
|
268
|
+
internalErrorBoxClass,
|
|
288
269
|
locale,
|
|
289
270
|
onTelemetry,
|
|
290
271
|
overrideLocalizedStrings,
|
|
291
|
-
polymiddleware: polymiddlewareFromProps,
|
|
292
272
|
renderMarkdown,
|
|
293
273
|
scrollToEndButtonMiddleware,
|
|
294
274
|
selectVoice,
|
|
295
275
|
sendBoxMiddleware,
|
|
296
276
|
sendBoxToolbarMiddleware,
|
|
297
277
|
sendTypingIndicator,
|
|
278
|
+
styleOptions,
|
|
298
279
|
toastMiddleware,
|
|
299
280
|
typingIndicatorMiddleware,
|
|
300
|
-
uiState,
|
|
301
281
|
userID,
|
|
302
282
|
username
|
|
303
283
|
}: ComposerCoreProps) => {
|
|
304
284
|
const [ponyfill] = usePonyfill();
|
|
305
|
-
const [styleOptions] = useStyleOptions();
|
|
306
285
|
const dispatch = useDispatch();
|
|
307
286
|
const telemetryDimensionsRef = useRef({});
|
|
308
|
-
const [voiceHandlers] = useVoiceHandlers();
|
|
309
287
|
|
|
310
288
|
const patchedDir = useMemo(() => (dir === 'ltr' || dir === 'rtl' ? dir : 'auto'), [dir]);
|
|
311
289
|
const patchedGrammars = useMemo(() => grammars || [], [grammars]);
|
|
312
|
-
|
|
313
|
-
|
|
290
|
+
const patchedStyleOptions = useMemo(
|
|
291
|
+
() => normalizeStyleOptions(patchStyleOptionsFromDeprecatedProps(styleOptions)),
|
|
292
|
+
[styleOptions]
|
|
293
|
+
);
|
|
314
294
|
|
|
315
295
|
useEffect(() => {
|
|
316
296
|
dispatch(setLanguage(locale));
|
|
@@ -343,20 +323,12 @@ const ComposerCore = ({
|
|
|
343
323
|
() =>
|
|
344
324
|
createCardActionContext({
|
|
345
325
|
cardActionMiddleware: Object.freeze([...singleToArray(cardActionMiddleware)]),
|
|
346
|
-
continuous: !!styleOptions.speechRecognitionContinuous,
|
|
347
326
|
directLine,
|
|
348
327
|
dispatch,
|
|
349
328
|
markAllAsAcknowledged,
|
|
350
329
|
ponyfill
|
|
351
330
|
}),
|
|
352
|
-
[
|
|
353
|
-
cardActionMiddleware,
|
|
354
|
-
directLine,
|
|
355
|
-
dispatch,
|
|
356
|
-
markAllAsAcknowledged,
|
|
357
|
-
ponyfill,
|
|
358
|
-
styleOptions.speechRecognitionContinuous
|
|
359
|
-
]
|
|
331
|
+
[cardActionMiddleware, directLine, dispatch, markAllAsAcknowledged, ponyfill]
|
|
360
332
|
);
|
|
361
333
|
|
|
362
334
|
const patchedSelectVoice = useMemo(
|
|
@@ -364,6 +336,16 @@ const ComposerCore = ({
|
|
|
364
336
|
[locale, selectVoice]
|
|
365
337
|
);
|
|
366
338
|
|
|
339
|
+
const groupActivitiesContext = useMemo(
|
|
340
|
+
() =>
|
|
341
|
+
createGroupActivitiesContext({
|
|
342
|
+
groupActivitiesMiddleware: Object.freeze([...singleToArray(groupActivitiesMiddleware)]),
|
|
343
|
+
groupTimestamp: patchedStyleOptions.groupTimestamp,
|
|
344
|
+
ponyfill
|
|
345
|
+
}),
|
|
346
|
+
[groupActivitiesMiddleware, patchedStyleOptions.groupTimestamp, ponyfill]
|
|
347
|
+
);
|
|
348
|
+
|
|
367
349
|
const hoistedDispatchers = useMemo(
|
|
368
350
|
() =>
|
|
369
351
|
mapMap(
|
|
@@ -376,15 +358,6 @@ const ComposerCore = ({
|
|
|
376
358
|
[dispatch]
|
|
377
359
|
);
|
|
378
360
|
|
|
379
|
-
const startVoice = useCallback(() => {
|
|
380
|
-
dispatch(startVoiceRecording());
|
|
381
|
-
}, [dispatch]);
|
|
382
|
-
|
|
383
|
-
const stopVoice = useCallback(() => {
|
|
384
|
-
voiceHandlers.forEach(handler => handler.stopAllAudio());
|
|
385
|
-
dispatch(stopVoiceRecording());
|
|
386
|
-
}, [dispatch, voiceHandlers]);
|
|
387
|
-
|
|
388
361
|
const patchedLocalizedStrings = useMemo(
|
|
389
362
|
() => mergeStringsOverrides(getAllLocalizedStrings()[normalizeLanguage(locale)], locale, overrideLocalizedStrings),
|
|
390
363
|
[locale, overrideLocalizedStrings]
|
|
@@ -417,6 +390,25 @@ const ComposerCore = ({
|
|
|
417
390
|
[telemetryDimensionsRef]
|
|
418
391
|
);
|
|
419
392
|
|
|
393
|
+
const patchedActivityRenderer = useMemo(
|
|
394
|
+
() =>
|
|
395
|
+
applyMiddlewareForRenderer(
|
|
396
|
+
'activity',
|
|
397
|
+
{ strict: false },
|
|
398
|
+
...singleToArray(activityMiddleware),
|
|
399
|
+
() =>
|
|
400
|
+
() =>
|
|
401
|
+
({ activity }) => {
|
|
402
|
+
if (activity) {
|
|
403
|
+
throw new Error(`No renderer for activity of type "${activity.type}"`);
|
|
404
|
+
} else {
|
|
405
|
+
throw new Error('No activity to render');
|
|
406
|
+
}
|
|
407
|
+
}
|
|
408
|
+
)({}),
|
|
409
|
+
[activityMiddleware]
|
|
410
|
+
);
|
|
411
|
+
|
|
420
412
|
const patchedActivityStatusRenderer = useMemo<RenderActivityStatus>(
|
|
421
413
|
() =>
|
|
422
414
|
applyMiddlewareForRenderer(
|
|
@@ -471,18 +463,14 @@ const ComposerCore = ({
|
|
|
471
463
|
[attachmentMiddleware]
|
|
472
464
|
);
|
|
473
465
|
|
|
474
|
-
const
|
|
475
|
-
() =>
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
);
|
|
483
|
-
|
|
484
|
-
const polymiddlewareForLegacyAvatarMiddleware = useMemo<Polymiddleware | undefined>(
|
|
485
|
-
() => createAvatarPolymiddlewareFromLegacy(...avatarMiddleware),
|
|
466
|
+
const patchedAvatarRenderer = useMemo(
|
|
467
|
+
() =>
|
|
468
|
+
applyMiddlewareForRenderer(
|
|
469
|
+
'avatar',
|
|
470
|
+
{ strict: false },
|
|
471
|
+
...singleToArray(avatarMiddleware),
|
|
472
|
+
() => () => () => false
|
|
473
|
+
)({}),
|
|
486
474
|
[avatarMiddleware]
|
|
487
475
|
);
|
|
488
476
|
|
|
@@ -527,50 +515,6 @@ const ComposerCore = ({
|
|
|
527
515
|
[scrollToEndButtonMiddleware]
|
|
528
516
|
);
|
|
529
517
|
|
|
530
|
-
const activityMiddleware = useMemoIterable<readonly LegacyActivityMiddleware[]>(
|
|
531
|
-
() => singleToArray(activityMiddlewareFromProps),
|
|
532
|
-
[activityMiddlewareFromProps]
|
|
533
|
-
);
|
|
534
|
-
|
|
535
|
-
const polymiddlewareForLegacyActivityMiddleware = useMemo<Polymiddleware | undefined>(
|
|
536
|
-
() => createActivityPolymiddlewareFromLegacy(...activityMiddleware),
|
|
537
|
-
[activityMiddleware]
|
|
538
|
-
);
|
|
539
|
-
|
|
540
|
-
const polymiddleware = useMemoIterable<readonly Polymiddleware[]>(
|
|
541
|
-
() =>
|
|
542
|
-
Object.freeze([
|
|
543
|
-
// Error box telemetry polymiddleware is special and has a much higher priority.
|
|
544
|
-
// This guarantees telemetry is always emitted for exception and no other polymiddleware can override this behavior.
|
|
545
|
-
errorBoxTelemetryPolymiddleware,
|
|
546
|
-
|
|
547
|
-
// # Why render legacy middleware before polymiddleware?
|
|
548
|
-
//
|
|
549
|
-
// - Legacy middleware should have high priority than defaults
|
|
550
|
-
// - Default middleware will be upgraded to polymiddleware, however, they should have lower priority
|
|
551
|
-
// - Default middleware are implemented in the `component` package, and passed via `polymiddleware` props
|
|
552
|
-
// - They are UI, cannot be implemented in `api` package
|
|
553
|
-
//
|
|
554
|
-
// We have a few way out, either one of the followings:
|
|
555
|
-
//
|
|
556
|
-
// - Add a new `lowPriorityPolymiddleware` props for default polymiddleware, so we can put them after legacy
|
|
557
|
-
// - We don't want any special treatments or any prioritization system
|
|
558
|
-
// - We put the upgrade logics inside both `api` and `component` package
|
|
559
|
-
// - `component` will upgrade legacy to polymiddleware and prioritize properly
|
|
560
|
-
// - Spaghetti code and it is difficult to test the logic in `api` package
|
|
561
|
-
// - We always render legacy middleware before polymiddleware
|
|
562
|
-
// - Default middleware are polymiddleware, has lower priority than legacy
|
|
563
|
-
//
|
|
564
|
-
// The simplest and logical move is #3: render legacy middleware before polymiddleware.
|
|
565
|
-
|
|
566
|
-
...(polymiddlewareForLegacyActivityMiddleware ? [polymiddlewareForLegacyActivityMiddleware] : []),
|
|
567
|
-
...(polymiddlewareForLegacyAvatarMiddleware ? [polymiddlewareForLegacyAvatarMiddleware] : []),
|
|
568
|
-
...(polymiddlewareFromProps ?? []),
|
|
569
|
-
activityFallbackPolymiddleware
|
|
570
|
-
]),
|
|
571
|
-
[polymiddlewareForLegacyActivityMiddleware, polymiddlewareForLegacyAvatarMiddleware, polymiddlewareFromProps]
|
|
572
|
-
);
|
|
573
|
-
|
|
574
518
|
/**
|
|
575
519
|
* This is a heavy function, and it is expected to be only called when there is a need to recreate business logic, e.g.
|
|
576
520
|
* - User ID changed, causing all send* functions to be updated
|
|
@@ -582,17 +526,22 @@ const ComposerCore = ({
|
|
|
582
526
|
* This context should consist of members that are not in the Redux store
|
|
583
527
|
* i.e. members that are not interested in other types of UIs
|
|
584
528
|
*/
|
|
585
|
-
const context = useMemo<ContextOf<
|
|
529
|
+
const context = useMemo<ContextOf<typeof WebChatAPIContext>>(
|
|
586
530
|
() => ({
|
|
587
531
|
...cardActionContext,
|
|
532
|
+
...groupActivitiesContext,
|
|
588
533
|
...hoistedDispatchers,
|
|
534
|
+
activityRenderer: patchedActivityRenderer,
|
|
589
535
|
activityStatusRenderer: patchedActivityStatusRenderer,
|
|
590
536
|
attachmentForScreenReaderRenderer: patchedAttachmentForScreenReaderRenderer,
|
|
591
537
|
attachmentRenderer: patchedAttachmentRenderer,
|
|
538
|
+
avatarRenderer: patchedAvatarRenderer,
|
|
592
539
|
dir: patchedDir,
|
|
593
540
|
directLine,
|
|
541
|
+
disabled,
|
|
594
542
|
downscaleImageToDataURL,
|
|
595
543
|
grammars: patchedGrammars,
|
|
544
|
+
internalErrorBoxClass,
|
|
596
545
|
language: locale,
|
|
597
546
|
localizedGlobalizeState: [localizedGlobalize],
|
|
598
547
|
localizedStrings: patchedLocalizedStrings,
|
|
@@ -601,41 +550,42 @@ const ComposerCore = ({
|
|
|
601
550
|
scrollToEndButtonRenderer,
|
|
602
551
|
selectVoice: patchedSelectVoice,
|
|
603
552
|
sendTypingIndicator,
|
|
604
|
-
|
|
605
|
-
stopVoice,
|
|
553
|
+
styleOptions: patchedStyleOptions,
|
|
606
554
|
telemetryDimensionsRef,
|
|
607
555
|
toastRenderer: patchedToastRenderer,
|
|
608
556
|
trackDimension,
|
|
609
557
|
typingIndicatorRenderer: patchedTypingIndicatorRenderer,
|
|
610
|
-
uiState,
|
|
611
558
|
userID,
|
|
612
559
|
username
|
|
613
560
|
}),
|
|
614
561
|
[
|
|
615
562
|
cardActionContext,
|
|
616
563
|
directLine,
|
|
564
|
+
disabled,
|
|
617
565
|
downscaleImageToDataURL,
|
|
566
|
+
groupActivitiesContext,
|
|
618
567
|
hoistedDispatchers,
|
|
568
|
+
internalErrorBoxClass,
|
|
619
569
|
locale,
|
|
620
570
|
localizedGlobalize,
|
|
621
571
|
onTelemetry,
|
|
572
|
+
patchedActivityRenderer,
|
|
622
573
|
patchedActivityStatusRenderer,
|
|
623
574
|
patchedAttachmentForScreenReaderRenderer,
|
|
624
575
|
patchedAttachmentRenderer,
|
|
576
|
+
patchedAvatarRenderer,
|
|
625
577
|
patchedDir,
|
|
626
578
|
patchedGrammars,
|
|
627
579
|
patchedLocalizedStrings,
|
|
628
580
|
patchedSelectVoice,
|
|
581
|
+
patchedStyleOptions,
|
|
629
582
|
patchedToastRenderer,
|
|
630
583
|
patchedTypingIndicatorRenderer,
|
|
631
584
|
renderMarkdown,
|
|
632
585
|
scrollToEndButtonRenderer,
|
|
633
586
|
sendTypingIndicator,
|
|
634
|
-
startVoice,
|
|
635
|
-
stopVoice,
|
|
636
587
|
telemetryDimensionsRef,
|
|
637
588
|
trackDimension,
|
|
638
|
-
uiState,
|
|
639
589
|
userID,
|
|
640
590
|
username
|
|
641
591
|
]
|
|
@@ -643,26 +593,18 @@ const ComposerCore = ({
|
|
|
643
593
|
|
|
644
594
|
return (
|
|
645
595
|
<WebChatAPIContext.Provider value={context}>
|
|
646
|
-
<
|
|
647
|
-
<
|
|
648
|
-
<
|
|
649
|
-
<
|
|
650
|
-
<
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
</GroupActivitiesComposer>
|
|
659
|
-
<ActivitySendStatusTelemetryComposer />
|
|
660
|
-
</SendBoxToolbarMiddlewareProvider>
|
|
661
|
-
</SendBoxMiddlewareProvider>
|
|
662
|
-
</ActivityTypingComposer>
|
|
663
|
-
</ActivitySendStatusComposer>
|
|
664
|
-
</ActivityListenerComposer>
|
|
665
|
-
</CapabilitiesComposer>
|
|
596
|
+
<ActivityListenerComposer>
|
|
597
|
+
<ActivitySendStatusComposer>
|
|
598
|
+
<ActivityTypingComposer>
|
|
599
|
+
<SendBoxMiddlewareProvider middleware={sendBoxMiddleware || EMPTY_ARRAY}>
|
|
600
|
+
<SendBoxToolbarMiddlewareProvider middleware={sendBoxToolbarMiddleware || EMPTY_ARRAY}>
|
|
601
|
+
{typeof children === 'function' ? children(context) : children}
|
|
602
|
+
<ActivitySendStatusTelemetryComposer />
|
|
603
|
+
</SendBoxToolbarMiddlewareProvider>
|
|
604
|
+
</SendBoxMiddlewareProvider>
|
|
605
|
+
</ActivityTypingComposer>
|
|
606
|
+
</ActivitySendStatusComposer>
|
|
607
|
+
</ActivityListenerComposer>
|
|
666
608
|
{onTelemetry && <Tracker />}
|
|
667
609
|
</WebChatAPIContext.Provider>
|
|
668
610
|
);
|
|
@@ -675,6 +617,7 @@ const ComposerCore = ({
|
|
|
675
617
|
* We should decide which data is needed for React but not in other environment such as CLI/VSCode
|
|
676
618
|
*/
|
|
677
619
|
ComposerCore.defaultProps = {
|
|
620
|
+
activityMiddleware: undefined,
|
|
678
621
|
activityStatusMiddleware: undefined,
|
|
679
622
|
attachmentForScreenReaderMiddleware: undefined,
|
|
680
623
|
attachmentMiddleware: undefined,
|
|
@@ -686,6 +629,7 @@ ComposerCore.defaultProps = {
|
|
|
686
629
|
downscaleImageToDataURL: undefined,
|
|
687
630
|
grammars: [],
|
|
688
631
|
groupActivitiesMiddleware: undefined,
|
|
632
|
+
internalErrorBoxClass: undefined,
|
|
689
633
|
locale: window.navigator.language || 'en-US',
|
|
690
634
|
onTelemetry: undefined,
|
|
691
635
|
overrideLocalizedStrings: undefined,
|
|
@@ -693,14 +637,15 @@ ComposerCore.defaultProps = {
|
|
|
693
637
|
scrollToEndButtonMiddleware: undefined,
|
|
694
638
|
selectVoice: undefined,
|
|
695
639
|
sendTypingIndicator: false,
|
|
640
|
+
styleOptions: {},
|
|
696
641
|
toastMiddleware: undefined,
|
|
697
642
|
typingIndicatorMiddleware: undefined,
|
|
698
|
-
uiState: undefined,
|
|
699
643
|
userID: '',
|
|
700
644
|
username: ''
|
|
701
645
|
};
|
|
702
646
|
|
|
703
647
|
ComposerCore.propTypes = {
|
|
648
|
+
activityMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
704
649
|
activityStatusMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
705
650
|
attachmentForScreenReaderMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
706
651
|
attachmentMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
@@ -727,6 +672,7 @@ ComposerCore.propTypes = {
|
|
|
727
672
|
downscaleImageToDataURL: PropTypes.func,
|
|
728
673
|
grammars: PropTypes.arrayOf(PropTypes.string),
|
|
729
674
|
groupActivitiesMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
675
|
+
internalErrorBoxClass: PropTypes.func, // This is for internal use only. We don't allow customization of error box.
|
|
730
676
|
locale: PropTypes.string,
|
|
731
677
|
onTelemetry: PropTypes.func,
|
|
732
678
|
overrideLocalizedStrings: PropTypes.oneOfType([PropTypes.any, PropTypes.func]),
|
|
@@ -734,9 +680,9 @@ ComposerCore.propTypes = {
|
|
|
734
680
|
scrollToEndButtonMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
735
681
|
selectVoice: PropTypes.func,
|
|
736
682
|
sendTypingIndicator: PropTypes.bool,
|
|
683
|
+
styleOptions: PropTypes.any,
|
|
737
684
|
toastMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
738
685
|
typingIndicatorMiddleware: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.func), PropTypes.func]),
|
|
739
|
-
uiState: PropTypes.oneOf(['blueprint', 'disabled']),
|
|
740
686
|
userID: PropTypes.string,
|
|
741
687
|
username: PropTypes.string
|
|
742
688
|
};
|
|
@@ -747,7 +693,7 @@ type ComposerWithStoreProps = ComposerCoreProps &
|
|
|
747
693
|
}>;
|
|
748
694
|
|
|
749
695
|
type ComposerProps = ComposerWithStoreProps & {
|
|
750
|
-
|
|
696
|
+
internalRenderErrorBox?: any;
|
|
751
697
|
|
|
752
698
|
/**
|
|
753
699
|
* Ponyfill to overrides specific global scope members. This prop cannot be changed after initial render.
|
|
@@ -758,8 +704,7 @@ type ComposerProps = ComposerWithStoreProps & {
|
|
|
758
704
|
*
|
|
759
705
|
* Please see [#4662](https://github.com/microsoft/BotFramework-WebChat/pull/4662) for details.
|
|
760
706
|
*/
|
|
761
|
-
|
|
762
|
-
readonly styleOptions?: StyleOptions | undefined;
|
|
707
|
+
ponyfill?: Partial<GlobalScopePonyfill>;
|
|
763
708
|
};
|
|
764
709
|
|
|
765
710
|
// We will create a Redux store if it was not passed in
|
|
@@ -803,15 +748,11 @@ const ComposerWithStore = ({ onTelemetry, store, ...props }: ComposerWithStorePr
|
|
|
803
748
|
|
|
804
749
|
return (
|
|
805
750
|
<Provider context={WebChatReduxContext} store={memoizedStore}>
|
|
806
|
-
<
|
|
807
|
-
<
|
|
808
|
-
<
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
</ActivityAcknowledgementComposer>
|
|
812
|
-
</ActivityKeyerComposer>
|
|
813
|
-
</GraphProvider>
|
|
814
|
-
</ReduxStoreComposer>
|
|
751
|
+
<ActivityKeyerComposer>
|
|
752
|
+
<ActivityAcknowledgementComposer>
|
|
753
|
+
<ComposerCore onTelemetry={onTelemetry} {...props} />
|
|
754
|
+
</ActivityAcknowledgementComposer>
|
|
755
|
+
</ActivityKeyerComposer>
|
|
815
756
|
</Provider>
|
|
816
757
|
);
|
|
817
758
|
};
|
|
@@ -826,7 +767,7 @@ ComposerWithStore.propTypes = {
|
|
|
826
767
|
store: PropTypes.any
|
|
827
768
|
};
|
|
828
769
|
|
|
829
|
-
const Composer = ({ internalRenderErrorBox, onTelemetry, ponyfill,
|
|
770
|
+
const Composer = ({ internalRenderErrorBox, onTelemetry, ponyfill, ...props }: ComposerProps) => {
|
|
830
771
|
const [error, setError] = useState();
|
|
831
772
|
|
|
832
773
|
const handleError = useCallback(
|
|
@@ -845,9 +786,7 @@ const Composer = ({ internalRenderErrorBox, onTelemetry, ponyfill, styleOptions,
|
|
|
845
786
|
) : (
|
|
846
787
|
<ErrorBoundary onError={handleError}>
|
|
847
788
|
<PonyfillComposer ponyfill={ponyfill}>
|
|
848
|
-
<
|
|
849
|
-
<ComposerWithStore onTelemetry={onTelemetry} {...props} />
|
|
850
|
-
</StyleOptionsComposer>
|
|
789
|
+
<ComposerWithStore onTelemetry={onTelemetry} {...props} />
|
|
851
790
|
</PonyfillComposer>
|
|
852
791
|
</ErrorBoundary>
|
|
853
792
|
);
|