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 3.9KB

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