obliques-group.tsx 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. import React from "react";
  2. import { ExerciseAttributeValueEnum } from "@prisma/client";
  3. export const ObliquesGroup = ({
  4. onToggleMuscle,
  5. getMuscleClasses,
  6. }: {
  7. onToggleMuscle: (muscle: ExerciseAttributeValueEnum) => void;
  8. getMuscleClasses: (muscle: ExerciseAttributeValueEnum) => string;
  9. }) => {
  10. return (
  11. <g className="group cursor-pointer" onClick={() => onToggleMuscle(ExerciseAttributeValueEnum.OBLIQUES)}>
  12. <path
  13. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  14. d="M 134.28,178.67
  15. C 135.80,178.08 137.44,177.63 138.74,176.72
  16. 142.62,174.02 145.10,170.17 146.78,165.84
  17. 147.58,163.80 147.29,161.70 146.02,159.83
  18. 143.83,156.62 141.13,153.89 138.15,151.43
  19. 137.82,151.16 137.39,151.02 136.74,150.68
  20. 136.87,151.36 136.92,151.76 137.02,152.15
  21. 138.19,156.68 138.78,161.29 138.44,165.97
  22. 138.11,170.47 136.77,174.56 133.37,177.76
  23. 133.19,177.94 133.06,178.17 132.66,178.69
  24. 133.43,178.69 133.91,178.81 134.28,178.67"
  25. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  26. id="path128"
  27. stroke="black"
  28. strokeWidth="0"
  29. />
  30. <path
  31. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  32. d="M 96.36,177.87
  33. C 93.31,175.14 91.86,171.59 91.33,167.64
  34. 90.63,162.39 91.23,157.23 92.57,152.14
  35. 92.68,151.73 92.71,151.30 92.78,150.88
  36. 92.69,150.83 92.60,150.78 92.51,150.72
  37. 92.06,151.03 91.54,151.26 91.17,151.65
  38. 88.72,154.19 86.19,156.67 83.92,159.37
  39. 82.10,161.53 81.92,164.15 83.14,166.68
  40. 84.09,168.66 85.19,170.60 86.47,172.39
  41. 88.38,175.05 90.74,177.28 93.94,178.36
  42. 94.81,178.66 95.73,179.06 96.79,178.44
  43. 96.58,178.17 96.50,177.99 96.36,177.87"
  44. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  45. id="path130"
  46. stroke="black"
  47. strokeWidth="0"
  48. />
  49. <path
  50. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  51. d="M 133.30,127.21
  52. C 134.46,133.05 135.57,138.89 136.92,144.67
  53. 137.30,146.28 138.27,147.83 139.28,149.17
  54. 140.60,150.93 142.19,152.50 143.76,154.05
  55. 146.20,156.46 148.04,159.20 148.93,162.54
  56. 149.03,162.88 149.17,163.22 149.39,163.82
  57. 150.71,162.19 151.16,160.53 151.28,158.82
  58. 151.28,158.82 152.05,150.83 152.05,150.83
  59. 152.19,149.95 152.36,149.07 152.47,148.18
  60. 153.20,142.15 153.30,136.10 152.92,130.04
  61. 152.72,126.77 152.45,123.50 152.14,120.24
  62. 152.01,118.81 151.55,118.53 150.26,119.02
  63. 150.26,119.02 135.99,124.40 135.99,124.40
  64. 135.99,124.40 135.99,124.41 135.99,124.41
  65. 135.78,124.42 135.56,124.44 135.32,124.48
  66. 133.82,124.70 133.01,125.72 133.30,127.21"
  67. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  68. id="path192"
  69. stroke="black"
  70. strokeWidth="0"
  71. />
  72. <path
  73. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  74. d="M 79.63,119.11
  75. C 79.59,119.09 79.56,119.08 79.52,119.06
  76. 79.52,119.06 79.39,119.02 79.39,119.02
  77. 79.39,119.02 79.39,119.02 79.39,119.02
  78. 77.87,118.42 77.56,119.01 77.32,121.30
  79. 76.60,128.01 76.33,134.74 76.69,141.49
  80. 76.83,144.18 77.31,147.83 77.60,150.78
  81. 77.60,150.78 77.60,150.83 77.60,150.83
  82. 77.60,150.83 78.30,158.17 78.30,158.17
  83. 78.30,158.23 78.30,158.29 78.30,158.36
  84. 78.33,160.24 78.75,162.03 80.08,163.65
  85. 80.28,163.40 80.39,163.33 80.42,163.23
  86. 80.55,162.88 80.67,162.51 80.78,162.15
  87. 81.49,159.74 82.57,157.54 84.32,155.70
  88. 85.82,154.13 87.32,152.56 88.81,150.98
  89. 91.12,148.51 92.82,145.72 93.31,142.29
  90. 93.42,141.50 93.60,140.72 93.76,139.94
  91. 94.61,135.79 95.50,131.66 96.28,127.50
  92. 96.64,125.60 95.80,124.63 93.88,124.42
  93. 93.80,124.42 93.73,124.42 93.65,124.41
  94. 93.65,124.41 93.66,124.40 93.66,124.40
  95. 93.66,124.40 79.63,119.11 79.63,119.11"
  96. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  97. id="path194"
  98. stroke="black"
  99. strokeWidth="0"
  100. />
  101. <path
  102. className="fill-transparent"
  103. d="M 131.50,125.25
  104. C 131.50,125.25 135.75,145.25 135.75,145.25
  105. 135.75,145.25 136.75,154.00 136.75,154.00
  106. 136.75,154.00 137.00,164.75 137.00,164.75
  107. 137.00,164.75 136.25,171.75 136.25,171.75
  108. 136.25,171.75 132.75,176.75 132.75,176.75
  109. 132.75,176.75 134.75,180.25 134.75,180.25
  110. 134.75,180.25 133.50,192.00 133.50,192.00
  111. 133.50,192.00 130.75,202.50 130.75,202.50
  112. 130.75,202.50 124.75,217.25 124.75,217.25
  113. 124.75,217.25 123.25,220.50 123.25,220.50
  114. 123.25,220.50 132.00,217.25 132.00,217.25
  115. 132.00,217.25 144.75,204.00 144.75,204.00
  116. 144.75,204.00 151.25,192.75 151.25,192.75
  117. 151.25,192.75 152.50,184.25 152.50,184.25
  118. 152.50,184.25 152.00,171.75 152.00,171.75
  119. 152.00,171.75 151.25,167.00 151.25,167.00
  120. 151.25,167.00 154.75,158.50 154.75,158.50
  121. 154.75,158.50 155.25,133.75 155.25,133.75
  122. 155.25,133.75 154.50,116.50 154.50,116.25
  123. 154.50,116.00 152.00,117.00 152.00,117.00
  124. 152.00,117.00 145.75,120.25 145.75,120.25
  125. 145.75,120.25 138.25,123.50 138.25,123.50
  126. 138.25,123.50 131.50,125.00 131.50,125.00"
  127. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  128. stroke="black"
  129. strokeWidth="0"
  130. />
  131. {/* front */}
  132. <path
  133. className="fill-transparent"
  134. d="M 75.00,115.75
  135. C 75.00,115.75 74.00,138.50 74.00,138.50
  136. 74.00,138.50 75.50,151.00 75.50,151.00
  137. 75.50,151.00 75.75,163.25 75.75,163.25
  138. 75.75,163.25 78.75,166.50 78.75,166.50
  139. 78.75,166.50 76.00,179.50 76.00,179.50
  140. 76.00,179.50 76.00,187.00 76.00,187.00
  141. 76.00,187.00 77.75,192.00 77.75,192.00
  142. 77.75,192.00 81.50,197.50 81.50,197.50
  143. 81.50,197.50 87.25,205.50 87.25,205.50
  144. 87.25,205.50 94.00,213.50 94.00,213.50
  145. 94.00,213.50 102.25,219.25 102.25,219.25
  146. 102.25,219.25 106.00,220.75 106.00,220.75
  147. 106.00,220.75 101.25,207.00 101.25,207.00
  148. 101.25,207.00 96.75,194.50 96.75,194.50
  149. 96.75,194.50 95.00,180.00 94.75,180.00
  150. 94.50,180.00 96.25,177.25 96.25,177.25
  151. 96.25,177.25 93.50,170.50 93.50,170.50
  152. 93.50,170.50 93.25,155.00 93.25,155.00
  153. 93.25,155.00 94.00,142.75 94.00,142.75
  154. 94.00,142.75 96.75,127.75 96.75,127.75
  155. 96.75,127.75 98.50,125.00 98.50,125.00
  156. 98.50,125.00 80.50,119.00 80.50,119.00
  157. 80.50,119.00 75.25,115.50 75.25,115.50"
  158. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  159. stroke="black"
  160. strokeWidth="0"
  161. />
  162. <path
  163. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  164. d="M 125.27,217.07
  165. C 125.09,217.39 125.10,217.82 125.02,218.20
  166. 125.41,218.20 125.87,218.33 126.20,218.18
  167. 127.38,217.66 128.62,217.18 129.65,216.44
  168. 137.46,210.87 143.48,203.73 147.82,195.19
  169. 149.29,192.30 150.60,189.30 150.80,186.01
  170. 151.14,180.36 150.16,174.85 148.66,169.42
  171. 148.53,168.97 148.27,168.57 147.93,167.83
  172. 147.49,168.64 147.24,169.11 146.99,169.57
  173. 144.93,173.36 142.29,176.69 138.49,178.77
  174. 136.30,179.97 135.45,181.45 135.46,183.84
  175. 135.49,188.83 134.47,193.68 133.09,198.45
  176. 131.22,204.97 128.54,211.14 125.27,217.07"
  177. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  178. id="path112"
  179. stroke="black"
  180. strokeWidth="0"
  181. />
  182. <path
  183. className={getMuscleClasses(ExerciseAttributeValueEnum.OBLIQUES)}
  184. d="M 97.07,214.29
  185. C 99.04,215.92 101.02,217.56 103.56,218.25
  186. 103.88,218.33 104.26,218.19 104.62,218.15
  187. 104.55,217.83 104.56,217.48 104.41,217.20
  188. 103.37,215.13 102.21,213.10 101.24,211.00
  189. 97.13,202.07 94.13,192.84 94.06,182.87
  190. 94.05,181.21 93.41,180.03 91.92,179.28
  191. 87.87,177.21 85.11,173.86 82.81,170.05
  192. 82.45,169.45 82.15,168.80 81.81,168.18
  193. 81.68,168.18 81.55,168.18 81.41,168.17
  194. 81.20,168.73 80.92,169.26 80.80,169.83
  195. 80.19,172.85 79.48,175.86 79.05,178.91
  196. 78.44,183.21 78.48,187.48 80.18,191.62
  197. 83.88,200.63 89.61,208.11 97.07,214.29"
  198. data-elem={ExerciseAttributeValueEnum.OBLIQUES}
  199. id="path114"
  200. stroke="black"
  201. strokeWidth="0"
  202. />
  203. </g>
  204. );
  205. };