// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.
/**
 * @private
 */
export function callWithChatAdapterStateFromBackingStates(callAdapter) {
    const callAdapterState = callAdapter.getState();
    return {
        call: callAdapterState.call,
        chat: undefined,
        userId: callAdapterState.userId,
        page: callAdapterState.page,
        displayName: callAdapterState.displayName,
        devices: callAdapterState.devices,
        isLocalPreviewMicrophoneEnabled: callAdapterState.isLocalPreviewMicrophoneEnabled,
        isTeamsCall: callAdapterState.isTeamsCall,
        isTeamsMeeting: callAdapterState.isTeamsMeeting,
        latestCallErrors: callAdapterState.latestErrors,
        latestCallNotifications: callAdapterState.latestNotifications,
        latestChatErrors: {},
        alternateCallerId: callAdapterState.alternateCallerId,
        environmentInfo: callAdapterState.environmentInfo,
        videoBackgroundImages: callAdapterState.videoBackgroundImages,
        onResolveVideoEffectDependency: callAdapterState.onResolveVideoEffectDependency,
        onResolveDeepNoiseSuppressionDependency: callAdapterState.onResolveDeepNoiseSuppressionDependency,
        selectedVideoBackgroundEffect: callAdapterState.selectedVideoBackgroundEffect,
        /** Hide attendee names in teams meeting */
        hideAttendeeNames: callAdapterState.hideAttendeeNames,
        reactions: callAdapterState.reactions
    };
}
/**
 * @private
 */
export function mergeChatAdapterStateIntoCallWithChatAdapterState(existingCallWithChatAdapterState, chatAdapterState) {
    return Object.assign(Object.assign({}, existingCallWithChatAdapterState), { chat: chatAdapterState.thread, latestChatErrors: chatAdapterState.latestErrors });
}
/**
 * @private
 */
export function mergeCallAdapterStateIntoCallWithChatAdapterState(existingCallWithChatAdapterState, callAdapterState) {
    return Object.assign(Object.assign({}, existingCallWithChatAdapterState), { userId: callAdapterState.userId, page: callAdapterState.page, displayName: callAdapterState.displayName, devices: callAdapterState.devices, call: callAdapterState.call, isLocalPreviewMicrophoneEnabled: callAdapterState.isLocalPreviewMicrophoneEnabled, isTeamsCall: callAdapterState.isTeamsCall, isTeamsMeeting: callAdapterState.isTeamsMeeting, latestCallErrors: callAdapterState.latestErrors, latestCallNotifications: callAdapterState.latestNotifications, videoBackgroundImages: callAdapterState.videoBackgroundImages, onResolveVideoEffectDependency: callAdapterState.onResolveVideoEffectDependency, onResolveDeepNoiseSuppressionDependency: callAdapterState.onResolveDeepNoiseSuppressionDependency, deepNoiseSuppressionOnByDefault: callAdapterState.deepNoiseSuppressionOnByDefault, hideDeepNoiseSuppressionButton: callAdapterState.hideDeepNoiseSuppressionButton, selectedVideoBackgroundEffect: callAdapterState.selectedVideoBackgroundEffect });
}
//# sourceMappingURL=CallWithChatAdapterState.js.map