You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

styles.js 4.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. import { ColorSchemeRegistry, schemeColor } from '../../../base/color-scheme';
  2. import { BoxModel, ColorPalette, fixAndroidViewClipping } from '../../../base/styles';
  3. import { FILMSTRIP_SIZE } from '../../../filmstrip';
  4. export const NAVBAR_GRADIENT_COLORS = [ '#000000FF', '#00000000' ];
  5. export const INSECURE_ROOM_NAME_LABEL_COLOR = ColorPalette.warning;
  6. // From brand guideline
  7. const BOTTOM_GRADIENT_HEIGHT = 290;
  8. const DEFAULT_GRADIENT_SIZE = 140;
  9. /**
  10. * The styles of the feature conference.
  11. */
  12. export default {
  13. bottomGradient: {
  14. bottom: 0,
  15. flexDirection: 'column',
  16. justifyContent: 'flex-end',
  17. minHeight: DEFAULT_GRADIENT_SIZE,
  18. left: 0,
  19. position: 'absolute',
  20. right: 0
  21. },
  22. /**
  23. * {@code Conference} style.
  24. */
  25. conference: fixAndroidViewClipping({
  26. alignSelf: 'stretch',
  27. backgroundColor: ColorPalette.appBackground,
  28. flex: 1
  29. }),
  30. gradient: {
  31. position: 'absolute',
  32. top: 0,
  33. left: 0,
  34. right: 0,
  35. flex: 1
  36. },
  37. gradientStretchBottom: {
  38. height: BOTTOM_GRADIENT_HEIGHT
  39. },
  40. gradientStretchTop: {
  41. height: DEFAULT_GRADIENT_SIZE
  42. },
  43. /**
  44. * View that contains the indicators.
  45. */
  46. indicatorContainer: {
  47. flex: 1,
  48. flexDirection: 'row',
  49. justifyContent: 'flex-end',
  50. margin: BoxModel.margin
  51. },
  52. /**
  53. * Indicator container for wide aspect ratio.
  54. */
  55. indicatorContainerWide: {
  56. marginRight: FILMSTRIP_SIZE + BoxModel.margin
  57. },
  58. labelWrapper: {
  59. flexDirection: 'column',
  60. position: 'absolute',
  61. right: 0,
  62. top: 0
  63. },
  64. lonelyButton: {
  65. alignItems: 'center',
  66. borderRadius: 24,
  67. flexDirection: 'row',
  68. height: 48,
  69. justifyContent: 'space-around',
  70. paddingHorizontal: 12
  71. },
  72. lonelyButtonComponents: {
  73. marginHorizontal: 6
  74. },
  75. lonelyMeetingContainer: {
  76. alignSelf: 'stretch',
  77. alignItems: 'center',
  78. padding: BoxModel.padding * 2
  79. },
  80. lonelyMessage: {
  81. paddingVertical: 12
  82. },
  83. navBarButton: {
  84. iconStyle: {
  85. color: ColorPalette.white,
  86. fontSize: 24
  87. },
  88. underlayColor: 'transparent'
  89. },
  90. navBarContainer: {
  91. flexDirection: 'column',
  92. left: 0,
  93. position: 'absolute',
  94. right: 0,
  95. top: 0
  96. },
  97. navBarSafeView: {
  98. left: 0,
  99. position: 'absolute',
  100. right: 0,
  101. top: 0
  102. },
  103. navBarWrapper: {
  104. alignItems: 'center',
  105. flex: 1,
  106. flexDirection: 'row',
  107. height: 44,
  108. justifyContent: 'space-between',
  109. paddingHorizontal: 14
  110. },
  111. roomTimer: {
  112. color: ColorPalette.white,
  113. fontSize: 15,
  114. opacity: 0.6
  115. },
  116. roomName: {
  117. color: ColorPalette.white,
  118. fontSize: 17,
  119. fontWeight: '400'
  120. },
  121. roomNameWrapper: {
  122. flexDirection: 'column',
  123. alignItems: 'center',
  124. left: 0,
  125. paddingHorizontal: 48,
  126. position: 'absolute',
  127. right: 0
  128. },
  129. /**
  130. * The style of the {@link View} which expands over the whole
  131. * {@link Conference} area and splits it between the {@link Filmstrip} and
  132. * the {@link Toolbox}.
  133. */
  134. toolboxAndFilmstripContainer: {
  135. bottom: 0,
  136. flexDirection: 'column',
  137. justifyContent: 'flex-end',
  138. left: 0,
  139. paddingBottom: BoxModel.padding,
  140. position: 'absolute',
  141. right: 0,
  142. // Both on Android and iOS there is the status bar which may be visible.
  143. // On iPhone X there is the notch. In the two cases BoxModel.margin is
  144. // not enough.
  145. top: BoxModel.margin * 3
  146. },
  147. insecureRoomNameLabel: {
  148. backgroundColor: INSECURE_ROOM_NAME_LABEL_COLOR
  149. }
  150. };
  151. ColorSchemeRegistry.register('Conference', {
  152. lonelyButton: {
  153. backgroundColor: schemeColor('inviteButtonBackground')
  154. },
  155. lonelyMessage: {
  156. color: schemeColor('onVideoText')
  157. }
  158. });