stream-chat-react-native-core
Version:
The official React Native and Expo components for Stream Chat, a service for building chat applications
39 lines • 2.22 kB
JavaScript
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.MessageInputTrailingView = void 0;
var _react = _interopRequireDefault(require("react"));
var _reactNative = require("react-native");
var _reactNativeReanimated = _interopRequireDefault(require("react-native-reanimated"));
var _OutputButtons = require("./components/OutputButtons");
var _audioRecorderSelectors = require("./utils/audioRecorderSelectors");
var _MessageInputContext = require("../../contexts/messageInputContext/MessageInputContext");
var _ThemeContext = require("../../contexts/themeContext/ThemeContext");
var _useStateStore2 = require("../../hooks/useStateStore");
var _theme = require("../../theme");
var _transitions = require("../../utils/animations/transitions");
var _jsxRuntime = require("react/jsx-runtime");
var _jsxFileName = "/home/runner/work/stream-chat-react-native/stream-chat-react-native/package/src/components/MessageInput/MessageInputTrailingView.tsx";
var MessageInputTrailingView = () => {
var _useTheme = (0, _ThemeContext.useTheme)(),
outputButtonsContainer = _useTheme.theme.messageComposer.outputButtonsContainer;
var _useMessageInputConte = (0, _MessageInputContext.useMessageInputContext)(),
audioRecorderManager = _useMessageInputConte.audioRecorderManager;
var _useStateStore = (0, _useStateStore2.useStateStore)(audioRecorderManager.state, _audioRecorderSelectors.audioRecorderSelector),
micLocked = _useStateStore.micLocked,
recordingStatus = _useStateStore.recordingStatus;
return (recordingStatus === 'idle' || recordingStatus === 'recording') && !micLocked ? (0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
layout: _transitions.transitions.layout200,
style: [styles.outputButtonsContainer, outputButtonsContainer],
children: (0, _jsxRuntime.jsx)(_OutputButtons.OutputButtons, {})
}) : null;
};
exports.MessageInputTrailingView = MessageInputTrailingView;
var styles = _reactNative.StyleSheet.create({
outputButtonsContainer: {
alignSelf: 'flex-end',
padding: _theme.primitives.spacingXs
}
});
//# sourceMappingURL=MessageInputTrailingView.js.map