Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. // @flow
  2. import React, { Component } from 'react';
  3. import { TouchableOpacity, View } from 'react-native';
  4. import { TranscribingLabel } from '../../../transcribing';
  5. import { VideoQualityLabel } from '../../../video-quality';
  6. import { LabelHitSlop, LABEL_ID_INSECURE_ROOM_NAME, LABEL_ID_QUALITY, LABEL_ID_TRANSCRIBING } from './constants';
  7. import styles from './styles';
  8. import { InsecureRoomNameLabel } from './';
  9. type Props = {
  10. /**
  11. * Creates a function to be invoked when the onPress of the touchables are
  12. * triggered.
  13. */
  14. createOnPress: Function
  15. }
  16. /**
  17. * A container that renders the conference indicators, if any.
  18. */
  19. class Labels extends Component<Props> {
  20. /**
  21. * Implements React {@code Component}'s render.
  22. *
  23. * @inheritdoc
  24. */
  25. render() {
  26. return (
  27. <View pointerEvents = 'box-none'>
  28. <View
  29. pointerEvents = 'box-none'
  30. style = { styles.indicatorContainer }>
  31. <TouchableOpacity
  32. hitSlop = { LabelHitSlop }
  33. onPress = {
  34. this.props.createOnPress(LABEL_ID_TRANSCRIBING)
  35. } >
  36. <TranscribingLabel />
  37. </TouchableOpacity>
  38. <TouchableOpacity
  39. hitSlop = { LabelHitSlop }
  40. onPress = {
  41. this.props.createOnPress(LABEL_ID_INSECURE_ROOM_NAME)
  42. } >
  43. <InsecureRoomNameLabel />
  44. </TouchableOpacity>
  45. <TouchableOpacity
  46. hitSlop = { LabelHitSlop }
  47. onPress = {
  48. this.props.createOnPress(LABEL_ID_QUALITY) } >
  49. <VideoQualityLabel />
  50. </TouchableOpacity>
  51. </View>
  52. </View>
  53. );
  54. }
  55. }
  56. export default Labels;