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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. import { ColorPalette, createStyleSheet } from '../../../base/styles';
  2. export const AVATAR_BORDER_GRADIENT = [ '#4C9AFF', '#0052CC' ];
  3. export const BACKGROUND_OVERLAY_GRADIENT = [ '#0052CC', '#4C9AFF' ];
  4. const BUTTON_SIZE = 56;
  5. const CALLER_AVATAR_BORDER_WIDTH = 3;
  6. export const CALLER_AVATAR_SIZE = 128;
  7. const CALLER_AVATAR_CIRCLE_SIZE
  8. = CALLER_AVATAR_SIZE + (2 * CALLER_AVATAR_BORDER_WIDTH);
  9. const LINE_SPACING = 8;
  10. const PAGE_PADDING = 48;
  11. const _icon = {
  12. alignSelf: 'center',
  13. color: ColorPalette.white,
  14. fontSize: 32
  15. };
  16. const _responseButton = {
  17. alignSelf: 'center',
  18. borderRadius: BUTTON_SIZE / 2,
  19. borderWidth: 0,
  20. flex: 0,
  21. flexDirection: 'row',
  22. height: BUTTON_SIZE,
  23. justifyContent: 'center',
  24. width: BUTTON_SIZE
  25. };
  26. const _text = {
  27. color: ColorPalette.white,
  28. fontSize: 16
  29. };
  30. export default createStyleSheet({
  31. answerButtonStyles: {
  32. iconStyle: {
  33. ..._icon,
  34. transform: [
  35. { rotateZ: '130deg' }
  36. ]
  37. },
  38. style: {
  39. ..._responseButton,
  40. backgroundColor: ColorPalette.green
  41. },
  42. underlayColor: ColorPalette.buttonUnderlay
  43. },
  44. avatar: {
  45. marginLeft: CALLER_AVATAR_BORDER_WIDTH,
  46. marginTop: CALLER_AVATAR_BORDER_WIDTH,
  47. position: 'absolute'
  48. },
  49. avatarBorder: {
  50. borderRadius: CALLER_AVATAR_CIRCLE_SIZE / 2,
  51. height: CALLER_AVATAR_CIRCLE_SIZE,
  52. position: 'absolute',
  53. width: CALLER_AVATAR_CIRCLE_SIZE
  54. },
  55. avatarContainer: {
  56. height: CALLER_AVATAR_CIRCLE_SIZE,
  57. marginTop: LINE_SPACING * 4,
  58. width: CALLER_AVATAR_CIRCLE_SIZE
  59. },
  60. backgroundAvatar: {
  61. bottom: 0,
  62. left: 0,
  63. position: 'absolute',
  64. right: 0,
  65. top: 0
  66. },
  67. backgroundAvatarImage: {
  68. flex: 1
  69. },
  70. backgroundOverlayGradient: {
  71. bottom: 0,
  72. left: 0,
  73. opacity: 0.9,
  74. position: 'absolute',
  75. right: 0,
  76. top: 0
  77. },
  78. buttonsContainer: {
  79. alignItems: 'flex-end',
  80. flex: 1,
  81. flexDirection: 'row'
  82. },
  83. buttonText: {
  84. ..._text,
  85. alignSelf: 'center',
  86. marginTop: 1.5 * LINE_SPACING
  87. },
  88. buttonWrapper: {
  89. flex: 1
  90. },
  91. callerName: {
  92. ..._text,
  93. fontSize: 36,
  94. marginBottom: LINE_SPACING,
  95. marginLeft: PAGE_PADDING,
  96. marginRight: PAGE_PADDING,
  97. marginTop: LINE_SPACING,
  98. textAlign: 'center'
  99. },
  100. declineButtonStyles: {
  101. iconStyle: _icon,
  102. style: {
  103. ..._responseButton,
  104. backgroundColor: ColorPalette.red
  105. },
  106. underlayColor: ColorPalette.buttonUnderlay
  107. },
  108. pageContainer: {
  109. alignItems: 'center',
  110. flex: 1,
  111. paddingBottom: PAGE_PADDING,
  112. paddingTop: PAGE_PADDING
  113. },
  114. productLabel: {
  115. ..._text
  116. },
  117. title: {
  118. ..._text
  119. }
  120. });