Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

ProfileCard.styled.js 5.1KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. import styled from "styled-components";
  2. import { Card, Typography, Grid, Box } from "@mui/material";
  3. import selectedTheme from "../../themes";
  4. import { ReactComponent as Edit } from "../../assets/images/svg/edit.svg";
  5. import { ReactComponent as Pocket } from "../../assets/images/svg/pocket.svg";
  6. import { ReactComponent as Globe } from "../../assets/images/svg/globe.svg";
  7. import { ReactComponent as Mail } from "../../assets/images/svg/mail.svg";
  8. import { ReactComponent as Location } from "../../assets/images/svg/location.svg";
  9. // import { PRIMARY_PURPLE_COLOR, PRIMARY_YELLOW_COLOR } from '../../constants/stylesConstants';
  10. export const ProfileCardContainer = styled(Box)`
  11. width: 100%;
  12. box-sizing: border-box;
  13. padding: 0 50px;
  14. margin-top: 34px;
  15. @media (max-width: 600px) {
  16. padding: 0;
  17. }
  18. `;
  19. export const EditIcon = styled(Edit)`
  20. width: 18px;
  21. height: 18px;
  22. & path {
  23. stroke: ${selectedTheme.primaryPurple};
  24. }
  25. `;
  26. export const EditButton = styled(Box)`
  27. position: absolute;
  28. right: 1rem;
  29. top: 1rem;
  30. color: ${selectedTheme.primaryPurple};
  31. font-weight: 900;
  32. background: #f4f4f4;
  33. border-radius: 360px;
  34. padding: 0.45rem 0.45rem 0.27rem 0.57rem;
  35. cursor: pointer;
  36. `;
  37. export const MessageButton = styled(EditButton)`
  38. background: ${selectedTheme.primaryPurple};
  39. `;
  40. export const ProfileCardWrapper = styled(Card)`
  41. border: 1px solid ${selectedTheme.primaryPurple};
  42. background: ${(props) =>
  43. props.isMyProfile ? selectedTheme.primaryPurple : "white"};
  44. width: 100%;
  45. min-width: fit-content;
  46. padding: 1rem;
  47. position: relative;
  48. `;
  49. export const ProfileName = styled(Typography)`
  50. color: ${(props) =>
  51. props.isMyProfile
  52. ? selectedTheme.primaryYellow
  53. : selectedTheme.primaryPurple};
  54. font-weight: 700;
  55. font-size: 24px;
  56. font-family: "Open Sans";
  57. margin-bottom: 5px;
  58. @media (max-width: 600px) {
  59. font-size: 18px;
  60. }
  61. `;
  62. export const ProfilePIB = styled(Typography)`
  63. color: ${(props) =>
  64. props.isMyProfile ? "white" : selectedTheme.primaryDarkText};
  65. margin-top: 0.18rem;
  66. font-family: "Open Sans";
  67. font-size: 16px;
  68. padding-top: 1px;
  69. @media (max-width: 600px) {
  70. font-size: 14px;
  71. }
  72. `;
  73. export const ProfilePIBContainer = styled(Grid)`
  74. position: relative;
  75. left: 5px;
  76. `;
  77. export const ProfileMainInfo = styled(Grid)``;
  78. export const ProfileContact = styled(Grid)`
  79. padding-top: 2rem;
  80. padding-bottom: 2rem;
  81. @media (max-width: 600px) {
  82. padding-bottom: 1rem;
  83. }
  84. `;
  85. export const ContactItem = styled(Typography)`
  86. margin-right: 2rem;
  87. margin-left: 0.4rem;
  88. color: ${(props) =>
  89. props.isMyProfile ? "white" : selectedTheme.primaryDarkText};
  90. display: unset;
  91. font-family: "Open Sans";
  92. letter-spacing: 0.02em;
  93. font-size: 16px;
  94. position: relative;
  95. bottom: 1px;
  96. @media (max-width: 600px) {
  97. font-size: 14px;
  98. bottom: 4px;
  99. }
  100. `;
  101. export const StatsItem = styled(Typography)`
  102. margin-right: 2rem;
  103. display: unset;
  104. margin-left: 1rem;
  105. font-family: "Open Sans";
  106. font-size: 16px;
  107. margin-bottom: 2px;
  108. @media (max-width: 600px) {
  109. font-size: 12px;
  110. }
  111. `;
  112. export const ProfileStats = styled(Grid)`
  113. background: ${selectedTheme.primaryDarkTextSecond};
  114. width: calc(100% + 2rem);
  115. padding-top: 1.3rem;
  116. padding-bottom: 1.3rem;
  117. margin-bottom: -1rem;
  118. margin-left: -1rem;
  119. border-radius: 0 0 4px 4px;
  120. `;
  121. export const AvatarImage = styled.img`
  122. min-height: 144px;
  123. min-width: 144px;
  124. width: 144px;
  125. height: 144px;
  126. border-radius: 100%;
  127. @media (max-width: 600px) {
  128. min-height: 90px;
  129. min-width: 90px;
  130. width: 90px;
  131. height: 90px;
  132. }
  133. `;
  134. export const HeaderTitle = styled(Typography)`
  135. font-size: 16px;
  136. font-family: "Open Sans";
  137. color: ${selectedTheme.primaryDarkTextThird};
  138. position: relative;
  139. @media (max-width: 600px) {
  140. font-size: 12px;
  141. }
  142. `;
  143. export const PocketIcon = styled(Pocket)`
  144. width: 22px;
  145. height: 22px;
  146. position: relative;
  147. left: -5px;
  148. top: 2px;
  149. & path {
  150. stroke: #b4b4b4;
  151. }
  152. @media (max-width: 600px) {
  153. width: 14px;
  154. height: 14px;
  155. }
  156. `;
  157. export const MailIcon = styled(Mail)`
  158. height: 24px;
  159. width: 24px;
  160. & path {
  161. stroke: ${(props) =>
  162. props.isMyProfile
  163. ? selectedTheme.iconMineProfileColor
  164. : selectedTheme.iconProfileColor};
  165. }
  166. @media (max-width: 600px) {
  167. width: 14px;
  168. height: 14px;
  169. }
  170. `;
  171. export const GlobeIcon = styled(Globe)`
  172. height: 22px;
  173. width: 22px;
  174. & path {
  175. stroke: ${(props) =>
  176. props.isMyProfile
  177. ? selectedTheme.iconMineProfileColor
  178. : selectedTheme.iconProfileColor};
  179. }
  180. @media (max-width: 600px) {
  181. width: 14px;
  182. height: 14px;
  183. }
  184. `;
  185. export const LocationIcon = styled(Location)`
  186. height: 22px;
  187. width: 22px;
  188. & path {
  189. stroke: ${(props) =>
  190. props.isMyProfile
  191. ? selectedTheme.iconMineProfileColor
  192. : selectedTheme.iconProfileColor};
  193. }
  194. @media (max-width: 600px) {
  195. width: 14px;
  196. height: 14px;
  197. }
  198. `;
  199. export const MessageIcon = styled(Mail)`
  200. width: 19.5px;
  201. height: 19.5px;
  202. position: relative;
  203. right: 0.7px;
  204. & path {
  205. stroke: ${selectedTheme.primaryYellow};
  206. }
  207. @media (max-width: 600px) {
  208. width: 14px;
  209. height: 14px;
  210. right: 0.5px;
  211. }
  212. `;