volleyballsimtypes 0.0.217 → 0.0.356

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (449) hide show
  1. package/package.json +38 -13
  2. package/dist/cjs/src/data/common/index.d.ts +0 -1
  3. package/dist/cjs/src/data/common/index.js +0 -17
  4. package/dist/cjs/src/data/common/status.d.ts +0 -8
  5. package/dist/cjs/src/data/common/status.js +0 -11
  6. package/dist/cjs/src/data/index.d.ts +0 -4
  7. package/dist/cjs/src/data/index.js +0 -22
  8. package/dist/cjs/src/data/init-models.d.ts +0 -2
  9. package/dist/cjs/src/data/init-models.js +0 -188
  10. package/dist/cjs/src/data/models/box-score.d.ts +0 -73
  11. package/dist/cjs/src/data/models/box-score.js +0 -174
  12. package/dist/cjs/src/data/models/competition-champion.d.ts +0 -23
  13. package/dist/cjs/src/data/models/competition-champion.js +0 -38
  14. package/dist/cjs/src/data/models/competition-match.d.ts +0 -29
  15. package/dist/cjs/src/data/models/competition-match.js +0 -46
  16. package/dist/cjs/src/data/models/competition-standings-match.d.ts +0 -45
  17. package/dist/cjs/src/data/models/competition-standings-match.js +0 -60
  18. package/dist/cjs/src/data/models/competition-standings.d.ts +0 -53
  19. package/dist/cjs/src/data/models/competition-standings.js +0 -57
  20. package/dist/cjs/src/data/models/competition-teams.d.ts +0 -23
  21. package/dist/cjs/src/data/models/competition-teams.js +0 -42
  22. package/dist/cjs/src/data/models/competition.d.ts +0 -82
  23. package/dist/cjs/src/data/models/competition.js +0 -54
  24. package/dist/cjs/src/data/models/country.d.ts +0 -50
  25. package/dist/cjs/src/data/models/country.js +0 -34
  26. package/dist/cjs/src/data/models/division-season.d.ts +0 -23
  27. package/dist/cjs/src/data/models/division-season.js +0 -38
  28. package/dist/cjs/src/data/models/division.d.ts +0 -49
  29. package/dist/cjs/src/data/models/division.js +0 -51
  30. package/dist/cjs/src/data/models/draft-pick.d.ts +0 -31
  31. package/dist/cjs/src/data/models/draft-pick.js +0 -50
  32. package/dist/cjs/src/data/models/draft.d.ts +0 -29
  33. package/dist/cjs/src/data/models/draft.js +0 -34
  34. package/dist/cjs/src/data/models/index.d.ts +0 -27
  35. package/dist/cjs/src/data/models/index.js +0 -43
  36. package/dist/cjs/src/data/models/iteration.d.ts +0 -26
  37. package/dist/cjs/src/data/models/iteration.js +0 -30
  38. package/dist/cjs/src/data/models/league.d.ts +0 -33
  39. package/dist/cjs/src/data/models/league.js +0 -44
  40. package/dist/cjs/src/data/models/match-rating.d.ts +0 -27
  41. package/dist/cjs/src/data/models/match-rating.js +0 -52
  42. package/dist/cjs/src/data/models/match-result.d.ts +0 -27
  43. package/dist/cjs/src/data/models/match-result.js +0 -38
  44. package/dist/cjs/src/data/models/match-set.d.ts +0 -65
  45. package/dist/cjs/src/data/models/match-set.js +0 -56
  46. package/dist/cjs/src/data/models/match.d.ts +0 -84
  47. package/dist/cjs/src/data/models/match.js +0 -52
  48. package/dist/cjs/src/data/models/performance-stats.d.ts +0 -53
  49. package/dist/cjs/src/data/models/performance-stats.js +0 -120
  50. package/dist/cjs/src/data/models/player-team.d.ts +0 -28
  51. package/dist/cjs/src/data/models/player-team.js +0 -52
  52. package/dist/cjs/src/data/models/player.d.ts +0 -99
  53. package/dist/cjs/src/data/models/player.js +0 -62
  54. package/dist/cjs/src/data/models/rally.d.ts +0 -29
  55. package/dist/cjs/src/data/models/rally.js +0 -50
  56. package/dist/cjs/src/data/models/tactics.d.ts +0 -38
  57. package/dist/cjs/src/data/models/tactics.js +0 -55
  58. package/dist/cjs/src/data/models/team.d.ts +0 -160
  59. package/dist/cjs/src/data/models/team.js +0 -62
  60. package/dist/cjs/src/data/models/user.d.ts +0 -22
  61. package/dist/cjs/src/data/models/user.js +0 -57
  62. package/dist/cjs/src/data/models/views/box-score-totals.d.ts +0 -71
  63. package/dist/cjs/src/data/models/views/box-score-totals.js +0 -138
  64. package/dist/cjs/src/data/models/views/index.d.ts +0 -1
  65. package/dist/cjs/src/data/models/views/index.js +0 -17
  66. package/dist/cjs/src/data/models/vper.d.ts +0 -25
  67. package/dist/cjs/src/data/models/vper.js +0 -46
  68. package/dist/cjs/src/data/transformers/box-score.d.ts +0 -5
  69. package/dist/cjs/src/data/transformers/box-score.js +0 -81
  70. package/dist/cjs/src/data/transformers/country.d.ts +0 -5
  71. package/dist/cjs/src/data/transformers/country.js +0 -20
  72. package/dist/cjs/src/data/transformers/court-position.d.ts +0 -5
  73. package/dist/cjs/src/data/transformers/court-position.js +0 -31
  74. package/dist/cjs/src/data/transformers/division.d.ts +0 -5
  75. package/dist/cjs/src/data/transformers/division.js +0 -35
  76. package/dist/cjs/src/data/transformers/draft-pick.d.ts +0 -5
  77. package/dist/cjs/src/data/transformers/draft-pick.js +0 -22
  78. package/dist/cjs/src/data/transformers/draft.d.ts +0 -5
  79. package/dist/cjs/src/data/transformers/draft.js +0 -23
  80. package/dist/cjs/src/data/transformers/events.d.ts +0 -8
  81. package/dist/cjs/src/data/transformers/events.js +0 -75
  82. package/dist/cjs/src/data/transformers/index.d.ts +0 -24
  83. package/dist/cjs/src/data/transformers/index.js +0 -40
  84. package/dist/cjs/src/data/transformers/iteration.d.ts +0 -5
  85. package/dist/cjs/src/data/transformers/iteration.js +0 -18
  86. package/dist/cjs/src/data/transformers/league.d.ts +0 -5
  87. package/dist/cjs/src/data/transformers/league.js +0 -24
  88. package/dist/cjs/src/data/transformers/match-rating.d.ts +0 -4
  89. package/dist/cjs/src/data/transformers/match-rating.js +0 -16
  90. package/dist/cjs/src/data/transformers/match-set.d.ts +0 -12
  91. package/dist/cjs/src/data/transformers/match-set.js +0 -52
  92. package/dist/cjs/src/data/transformers/match.d.ts +0 -5
  93. package/dist/cjs/src/data/transformers/match.js +0 -61
  94. package/dist/cjs/src/data/transformers/performance-stats.d.ts +0 -5
  95. package/dist/cjs/src/data/transformers/performance-stats.js +0 -51
  96. package/dist/cjs/src/data/transformers/player-team.d.ts +0 -3
  97. package/dist/cjs/src/data/transformers/player-team.js +0 -12
  98. package/dist/cjs/src/data/transformers/player.d.ts +0 -5
  99. package/dist/cjs/src/data/transformers/player.js +0 -79
  100. package/dist/cjs/src/data/transformers/rally.d.ts +0 -5
  101. package/dist/cjs/src/data/transformers/rally.js +0 -56
  102. package/dist/cjs/src/data/transformers/season-match.d.ts +0 -4
  103. package/dist/cjs/src/data/transformers/season-match.js +0 -16
  104. package/dist/cjs/src/data/transformers/season.d.ts +0 -5
  105. package/dist/cjs/src/data/transformers/season.js +0 -46
  106. package/dist/cjs/src/data/transformers/stage.d.ts +0 -5
  107. package/dist/cjs/src/data/transformers/stage.js +0 -25
  108. package/dist/cjs/src/data/transformers/standing.d.ts +0 -4
  109. package/dist/cjs/src/data/transformers/standing.js +0 -24
  110. package/dist/cjs/src/data/transformers/tactics.d.ts +0 -5
  111. package/dist/cjs/src/data/transformers/tactics.js +0 -60
  112. package/dist/cjs/src/data/transformers/team.d.ts +0 -5
  113. package/dist/cjs/src/data/transformers/team.js +0 -34
  114. package/dist/cjs/src/data/transformers/tournament-match.d.ts +0 -5
  115. package/dist/cjs/src/data/transformers/tournament-match.js +0 -23
  116. package/dist/cjs/src/data/transformers/tournament.d.ts +0 -5
  117. package/dist/cjs/src/data/transformers/tournament.js +0 -42
  118. package/dist/cjs/src/data/transformers/vper.d.ts +0 -5
  119. package/dist/cjs/src/data/transformers/vper.js +0 -20
  120. package/dist/cjs/src/index.d.ts +0 -2
  121. package/dist/cjs/src/index.js +0 -18
  122. package/dist/cjs/src/service/competition/division.d.ts +0 -22
  123. package/dist/cjs/src/service/competition/division.js +0 -15
  124. package/dist/cjs/src/service/competition/index.d.ts +0 -12
  125. package/dist/cjs/src/service/competition/index.js +0 -30
  126. package/dist/cjs/src/service/competition/iteration.d.ts +0 -10
  127. package/dist/cjs/src/service/competition/iteration.js +0 -12
  128. package/dist/cjs/src/service/competition/league.d.ts +0 -16
  129. package/dist/cjs/src/service/competition/league.js +0 -12
  130. package/dist/cjs/src/service/competition/season.d.ts +0 -31
  131. package/dist/cjs/src/service/competition/season.js +0 -47
  132. package/dist/cjs/src/service/competition/stage.d.ts +0 -11
  133. package/dist/cjs/src/service/competition/stage.js +0 -27
  134. package/dist/cjs/src/service/competition/standing.d.ts +0 -41
  135. package/dist/cjs/src/service/competition/standing.js +0 -87
  136. package/dist/cjs/src/service/competition/tournament-match.d.ts +0 -14
  137. package/dist/cjs/src/service/competition/tournament-match.js +0 -13
  138. package/dist/cjs/src/service/competition/tournament.d.ts +0 -23
  139. package/dist/cjs/src/service/competition/tournament.js +0 -23
  140. package/dist/cjs/src/service/country/country.d.ts +0 -17
  141. package/dist/cjs/src/service/country/country.js +0 -22
  142. package/dist/cjs/src/service/country/index.d.ts +0 -1
  143. package/dist/cjs/src/service/country/index.js +0 -17
  144. package/dist/cjs/src/service/draft/draft-pick.d.ts +0 -14
  145. package/dist/cjs/src/service/draft/draft-pick.js +0 -11
  146. package/dist/cjs/src/service/draft/draft.d.ts +0 -15
  147. package/dist/cjs/src/service/draft/draft.js +0 -12
  148. package/dist/cjs/src/service/draft/index.d.ts +0 -2
  149. package/dist/cjs/src/service/draft/index.js +0 -18
  150. package/dist/cjs/src/service/event/block.d.ts +0 -36
  151. package/dist/cjs/src/service/event/block.js +0 -37
  152. package/dist/cjs/src/service/event/event-types.d.ts +0 -7
  153. package/dist/cjs/src/service/event/event-types.js +0 -2
  154. package/dist/cjs/src/service/event/in-play-event.d.ts +0 -17
  155. package/dist/cjs/src/service/event/in-play-event.js +0 -21
  156. package/dist/cjs/src/service/event/index.d.ts +0 -10
  157. package/dist/cjs/src/service/event/index.js +0 -26
  158. package/dist/cjs/src/service/event/libero-replacement.d.ts +0 -18
  159. package/dist/cjs/src/service/event/libero-replacement.js +0 -25
  160. package/dist/cjs/src/service/event/rally-event.d.ts +0 -20
  161. package/dist/cjs/src/service/event/rally-event.js +0 -20
  162. package/dist/cjs/src/service/event/reception.d.ts +0 -33
  163. package/dist/cjs/src/service/event/reception.js +0 -34
  164. package/dist/cjs/src/service/event/serve.d.ts +0 -33
  165. package/dist/cjs/src/service/event/serve.js +0 -34
  166. package/dist/cjs/src/service/event/set.d.ts +0 -31
  167. package/dist/cjs/src/service/event/set.js +0 -32
  168. package/dist/cjs/src/service/event/spike.d.ts +0 -35
  169. package/dist/cjs/src/service/event/spike.js +0 -36
  170. package/dist/cjs/src/service/event/substitution.d.ts +0 -11
  171. package/dist/cjs/src/service/event/substitution.js +0 -18
  172. package/dist/cjs/src/service/index.d.ts +0 -8
  173. package/dist/cjs/src/service/index.js +0 -24
  174. package/dist/cjs/src/service/match/box-score.d.ts +0 -86
  175. package/dist/cjs/src/service/match/box-score.js +0 -66
  176. package/dist/cjs/src/service/match/court-position.d.ts +0 -34
  177. package/dist/cjs/src/service/match/court-position.js +0 -70
  178. package/dist/cjs/src/service/match/index.d.ts +0 -8
  179. package/dist/cjs/src/service/match/index.js +0 -24
  180. package/dist/cjs/src/service/match/match-rating.d.ts +0 -35
  181. package/dist/cjs/src/service/match/match-rating.js +0 -59
  182. package/dist/cjs/src/service/match/match-set.d.ts +0 -43
  183. package/dist/cjs/src/service/match/match-set.js +0 -55
  184. package/dist/cjs/src/service/match/match-team.d.ts +0 -7
  185. package/dist/cjs/src/service/match/match-team.js +0 -20
  186. package/dist/cjs/src/service/match/match.d.ts +0 -38
  187. package/dist/cjs/src/service/match/match.js +0 -52
  188. package/dist/cjs/src/service/match/rally.d.ts +0 -21
  189. package/dist/cjs/src/service/match/rally.js +0 -17
  190. package/dist/cjs/src/service/match/vper.d.ts +0 -13
  191. package/dist/cjs/src/service/match/vper.js +0 -56
  192. package/dist/cjs/src/service/player/index.d.ts +0 -6
  193. package/dist/cjs/src/service/player/index.js +0 -22
  194. package/dist/cjs/src/service/player/performance-stats.d.ts +0 -10
  195. package/dist/cjs/src/service/player/performance-stats.js +0 -19
  196. package/dist/cjs/src/service/player/player.d.ts +0 -53
  197. package/dist/cjs/src/service/player/player.js +0 -96
  198. package/dist/cjs/src/service/player/rarity.d.ts +0 -15
  199. package/dist/cjs/src/service/player/rarity.js +0 -18
  200. package/dist/cjs/src/service/player/role.d.ts +0 -15
  201. package/dist/cjs/src/service/player/role.js +0 -52
  202. package/dist/cjs/src/service/player/stats.d.ts +0 -12
  203. package/dist/cjs/src/service/player/stats.js +0 -68
  204. package/dist/cjs/src/service/player/trait.d.ts +0 -51
  205. package/dist/cjs/src/service/player/trait.js +0 -87
  206. package/dist/cjs/src/service/team/formation.d.ts +0 -30
  207. package/dist/cjs/src/service/team/formation.js +0 -123
  208. package/dist/cjs/src/service/team/index.d.ts +0 -3
  209. package/dist/cjs/src/service/team/index.js +0 -19
  210. package/dist/cjs/src/service/team/tactics.d.ts +0 -26
  211. package/dist/cjs/src/service/team/tactics.js +0 -31
  212. package/dist/cjs/src/service/team/team.d.ts +0 -30
  213. package/dist/cjs/src/service/team/team.js +0 -36
  214. package/dist/cjs/src/service/utils/index.d.ts +0 -4
  215. package/dist/cjs/src/service/utils/index.js +0 -20
  216. package/dist/cjs/src/service/utils/number-utils.d.ts +0 -2
  217. package/dist/cjs/src/service/utils/number-utils.js +0 -25
  218. package/dist/cjs/src/service/utils/object-utils.d.ts +0 -4
  219. package/dist/cjs/src/service/utils/object-utils.js +0 -4
  220. package/dist/cjs/src/service/utils/rng-utils.d.ts +0 -7
  221. package/dist/cjs/src/service/utils/rng-utils.js +0 -32
  222. package/dist/cjs/src/service/utils/string-utils.d.ts +0 -2
  223. package/dist/cjs/src/service/utils/string-utils.js +0 -16
  224. package/dist/cjs/src/stat-config/roles.json +0 -117
  225. package/dist/cjs/src/stat-config/traits.json +0 -94
  226. package/dist/esm/src/data/common/index.d.ts +0 -1
  227. package/dist/esm/src/data/common/index.js +0 -1
  228. package/dist/esm/src/data/common/status.d.ts +0 -8
  229. package/dist/esm/src/data/common/status.js +0 -8
  230. package/dist/esm/src/data/index.d.ts +0 -4
  231. package/dist/esm/src/data/index.js +0 -4
  232. package/dist/esm/src/data/init-models.d.ts +0 -2
  233. package/dist/esm/src/data/init-models.js +0 -184
  234. package/dist/esm/src/data/models/box-score.d.ts +0 -73
  235. package/dist/esm/src/data/models/box-score.js +0 -170
  236. package/dist/esm/src/data/models/competition-champion.d.ts +0 -23
  237. package/dist/esm/src/data/models/competition-champion.js +0 -34
  238. package/dist/esm/src/data/models/competition-match.d.ts +0 -29
  239. package/dist/esm/src/data/models/competition-match.js +0 -42
  240. package/dist/esm/src/data/models/competition-standings-match.d.ts +0 -45
  241. package/dist/esm/src/data/models/competition-standings-match.js +0 -56
  242. package/dist/esm/src/data/models/competition-standings.d.ts +0 -53
  243. package/dist/esm/src/data/models/competition-standings.js +0 -53
  244. package/dist/esm/src/data/models/competition-teams.d.ts +0 -23
  245. package/dist/esm/src/data/models/competition-teams.js +0 -38
  246. package/dist/esm/src/data/models/competition.d.ts +0 -82
  247. package/dist/esm/src/data/models/competition.js +0 -50
  248. package/dist/esm/src/data/models/country.d.ts +0 -50
  249. package/dist/esm/src/data/models/country.js +0 -30
  250. package/dist/esm/src/data/models/division-season.d.ts +0 -23
  251. package/dist/esm/src/data/models/division-season.js +0 -34
  252. package/dist/esm/src/data/models/division.d.ts +0 -49
  253. package/dist/esm/src/data/models/division.js +0 -47
  254. package/dist/esm/src/data/models/draft-pick.d.ts +0 -31
  255. package/dist/esm/src/data/models/draft-pick.js +0 -46
  256. package/dist/esm/src/data/models/draft.d.ts +0 -29
  257. package/dist/esm/src/data/models/draft.js +0 -30
  258. package/dist/esm/src/data/models/index.d.ts +0 -27
  259. package/dist/esm/src/data/models/index.js +0 -27
  260. package/dist/esm/src/data/models/iteration.d.ts +0 -26
  261. package/dist/esm/src/data/models/iteration.js +0 -26
  262. package/dist/esm/src/data/models/league.d.ts +0 -33
  263. package/dist/esm/src/data/models/league.js +0 -40
  264. package/dist/esm/src/data/models/match-rating.d.ts +0 -27
  265. package/dist/esm/src/data/models/match-rating.js +0 -48
  266. package/dist/esm/src/data/models/match-result.d.ts +0 -27
  267. package/dist/esm/src/data/models/match-result.js +0 -34
  268. package/dist/esm/src/data/models/match-set.d.ts +0 -65
  269. package/dist/esm/src/data/models/match-set.js +0 -52
  270. package/dist/esm/src/data/models/match.d.ts +0 -84
  271. package/dist/esm/src/data/models/match.js +0 -48
  272. package/dist/esm/src/data/models/performance-stats.d.ts +0 -53
  273. package/dist/esm/src/data/models/performance-stats.js +0 -116
  274. package/dist/esm/src/data/models/player-team.d.ts +0 -28
  275. package/dist/esm/src/data/models/player-team.js +0 -48
  276. package/dist/esm/src/data/models/player.d.ts +0 -99
  277. package/dist/esm/src/data/models/player.js +0 -58
  278. package/dist/esm/src/data/models/rally.d.ts +0 -29
  279. package/dist/esm/src/data/models/rally.js +0 -46
  280. package/dist/esm/src/data/models/tactics.d.ts +0 -38
  281. package/dist/esm/src/data/models/tactics.js +0 -51
  282. package/dist/esm/src/data/models/team.d.ts +0 -160
  283. package/dist/esm/src/data/models/team.js +0 -58
  284. package/dist/esm/src/data/models/user.d.ts +0 -22
  285. package/dist/esm/src/data/models/user.js +0 -53
  286. package/dist/esm/src/data/models/views/box-score-totals.d.ts +0 -71
  287. package/dist/esm/src/data/models/views/box-score-totals.js +0 -134
  288. package/dist/esm/src/data/models/views/index.d.ts +0 -1
  289. package/dist/esm/src/data/models/views/index.js +0 -1
  290. package/dist/esm/src/data/models/vper.d.ts +0 -25
  291. package/dist/esm/src/data/models/vper.js +0 -42
  292. package/dist/esm/src/data/transformers/box-score.d.ts +0 -5
  293. package/dist/esm/src/data/transformers/box-score.js +0 -77
  294. package/dist/esm/src/data/transformers/country.d.ts +0 -5
  295. package/dist/esm/src/data/transformers/country.js +0 -16
  296. package/dist/esm/src/data/transformers/court-position.d.ts +0 -5
  297. package/dist/esm/src/data/transformers/court-position.js +0 -27
  298. package/dist/esm/src/data/transformers/division.d.ts +0 -5
  299. package/dist/esm/src/data/transformers/division.js +0 -31
  300. package/dist/esm/src/data/transformers/draft-pick.d.ts +0 -5
  301. package/dist/esm/src/data/transformers/draft-pick.js +0 -18
  302. package/dist/esm/src/data/transformers/draft.d.ts +0 -5
  303. package/dist/esm/src/data/transformers/draft.js +0 -19
  304. package/dist/esm/src/data/transformers/events.d.ts +0 -8
  305. package/dist/esm/src/data/transformers/events.js +0 -65
  306. package/dist/esm/src/data/transformers/index.d.ts +0 -24
  307. package/dist/esm/src/data/transformers/index.js +0 -24
  308. package/dist/esm/src/data/transformers/iteration.d.ts +0 -5
  309. package/dist/esm/src/data/transformers/iteration.js +0 -14
  310. package/dist/esm/src/data/transformers/league.d.ts +0 -5
  311. package/dist/esm/src/data/transformers/league.js +0 -20
  312. package/dist/esm/src/data/transformers/match-rating.d.ts +0 -4
  313. package/dist/esm/src/data/transformers/match-rating.js +0 -13
  314. package/dist/esm/src/data/transformers/match-set.d.ts +0 -12
  315. package/dist/esm/src/data/transformers/match-set.js +0 -48
  316. package/dist/esm/src/data/transformers/match.d.ts +0 -5
  317. package/dist/esm/src/data/transformers/match.js +0 -57
  318. package/dist/esm/src/data/transformers/performance-stats.d.ts +0 -5
  319. package/dist/esm/src/data/transformers/performance-stats.js +0 -47
  320. package/dist/esm/src/data/transformers/player-team.d.ts +0 -3
  321. package/dist/esm/src/data/transformers/player-team.js +0 -9
  322. package/dist/esm/src/data/transformers/player.d.ts +0 -5
  323. package/dist/esm/src/data/transformers/player.js +0 -75
  324. package/dist/esm/src/data/transformers/rally.d.ts +0 -5
  325. package/dist/esm/src/data/transformers/rally.js +0 -52
  326. package/dist/esm/src/data/transformers/season-match.d.ts +0 -4
  327. package/dist/esm/src/data/transformers/season-match.js +0 -13
  328. package/dist/esm/src/data/transformers/season.d.ts +0 -5
  329. package/dist/esm/src/data/transformers/season.js +0 -42
  330. package/dist/esm/src/data/transformers/stage.d.ts +0 -5
  331. package/dist/esm/src/data/transformers/stage.js +0 -21
  332. package/dist/esm/src/data/transformers/standing.d.ts +0 -4
  333. package/dist/esm/src/data/transformers/standing.js +0 -21
  334. package/dist/esm/src/data/transformers/tactics.d.ts +0 -5
  335. package/dist/esm/src/data/transformers/tactics.js +0 -56
  336. package/dist/esm/src/data/transformers/team.d.ts +0 -5
  337. package/dist/esm/src/data/transformers/team.js +0 -30
  338. package/dist/esm/src/data/transformers/tournament-match.d.ts +0 -5
  339. package/dist/esm/src/data/transformers/tournament-match.js +0 -19
  340. package/dist/esm/src/data/transformers/tournament.d.ts +0 -5
  341. package/dist/esm/src/data/transformers/tournament.js +0 -38
  342. package/dist/esm/src/data/transformers/vper.d.ts +0 -5
  343. package/dist/esm/src/data/transformers/vper.js +0 -16
  344. package/dist/esm/src/index.d.ts +0 -2
  345. package/dist/esm/src/index.js +0 -2
  346. package/dist/esm/src/service/competition/division.d.ts +0 -22
  347. package/dist/esm/src/service/competition/division.js +0 -11
  348. package/dist/esm/src/service/competition/index.d.ts +0 -12
  349. package/dist/esm/src/service/competition/index.js +0 -13
  350. package/dist/esm/src/service/competition/iteration.d.ts +0 -10
  351. package/dist/esm/src/service/competition/iteration.js +0 -8
  352. package/dist/esm/src/service/competition/league.d.ts +0 -16
  353. package/dist/esm/src/service/competition/league.js +0 -8
  354. package/dist/esm/src/service/competition/season.d.ts +0 -31
  355. package/dist/esm/src/service/competition/season.js +0 -43
  356. package/dist/esm/src/service/competition/stage.d.ts +0 -11
  357. package/dist/esm/src/service/competition/stage.js +0 -24
  358. package/dist/esm/src/service/competition/standing.d.ts +0 -41
  359. package/dist/esm/src/service/competition/standing.js +0 -83
  360. package/dist/esm/src/service/competition/tournament-match.d.ts +0 -14
  361. package/dist/esm/src/service/competition/tournament-match.js +0 -9
  362. package/dist/esm/src/service/competition/tournament.d.ts +0 -23
  363. package/dist/esm/src/service/competition/tournament.js +0 -19
  364. package/dist/esm/src/service/country/country.d.ts +0 -17
  365. package/dist/esm/src/service/country/country.js +0 -18
  366. package/dist/esm/src/service/country/index.d.ts +0 -1
  367. package/dist/esm/src/service/country/index.js +0 -1
  368. package/dist/esm/src/service/draft/draft-pick.d.ts +0 -14
  369. package/dist/esm/src/service/draft/draft-pick.js +0 -7
  370. package/dist/esm/src/service/draft/draft.d.ts +0 -15
  371. package/dist/esm/src/service/draft/draft.js +0 -8
  372. package/dist/esm/src/service/draft/index.d.ts +0 -2
  373. package/dist/esm/src/service/draft/index.js +0 -2
  374. package/dist/esm/src/service/event/block.d.ts +0 -36
  375. package/dist/esm/src/service/event/block.js +0 -33
  376. package/dist/esm/src/service/event/event-types.d.ts +0 -7
  377. package/dist/esm/src/service/event/event-types.js +0 -1
  378. package/dist/esm/src/service/event/in-play-event.d.ts +0 -17
  379. package/dist/esm/src/service/event/in-play-event.js +0 -17
  380. package/dist/esm/src/service/event/index.d.ts +0 -10
  381. package/dist/esm/src/service/event/index.js +0 -10
  382. package/dist/esm/src/service/event/libero-replacement.d.ts +0 -18
  383. package/dist/esm/src/service/event/libero-replacement.js +0 -21
  384. package/dist/esm/src/service/event/rally-event.d.ts +0 -20
  385. package/dist/esm/src/service/event/rally-event.js +0 -16
  386. package/dist/esm/src/service/event/reception.d.ts +0 -33
  387. package/dist/esm/src/service/event/reception.js +0 -30
  388. package/dist/esm/src/service/event/serve.d.ts +0 -33
  389. package/dist/esm/src/service/event/serve.js +0 -30
  390. package/dist/esm/src/service/event/set.d.ts +0 -31
  391. package/dist/esm/src/service/event/set.js +0 -28
  392. package/dist/esm/src/service/event/spike.d.ts +0 -35
  393. package/dist/esm/src/service/event/spike.js +0 -32
  394. package/dist/esm/src/service/event/substitution.d.ts +0 -11
  395. package/dist/esm/src/service/event/substitution.js +0 -14
  396. package/dist/esm/src/service/index.d.ts +0 -8
  397. package/dist/esm/src/service/index.js +0 -8
  398. package/dist/esm/src/service/match/box-score.d.ts +0 -86
  399. package/dist/esm/src/service/match/box-score.js +0 -55
  400. package/dist/esm/src/service/match/court-position.d.ts +0 -34
  401. package/dist/esm/src/service/match/court-position.js +0 -62
  402. package/dist/esm/src/service/match/index.d.ts +0 -8
  403. package/dist/esm/src/service/match/index.js +0 -8
  404. package/dist/esm/src/service/match/match-rating.d.ts +0 -35
  405. package/dist/esm/src/service/match/match-rating.js +0 -55
  406. package/dist/esm/src/service/match/match-set.d.ts +0 -43
  407. package/dist/esm/src/service/match/match-set.js +0 -51
  408. package/dist/esm/src/service/match/match-team.d.ts +0 -7
  409. package/dist/esm/src/service/match/match-team.js +0 -17
  410. package/dist/esm/src/service/match/match.d.ts +0 -38
  411. package/dist/esm/src/service/match/match.js +0 -48
  412. package/dist/esm/src/service/match/rally.d.ts +0 -21
  413. package/dist/esm/src/service/match/rally.js +0 -13
  414. package/dist/esm/src/service/match/vper.d.ts +0 -13
  415. package/dist/esm/src/service/match/vper.js +0 -52
  416. package/dist/esm/src/service/player/index.d.ts +0 -6
  417. package/dist/esm/src/service/player/index.js +0 -6
  418. package/dist/esm/src/service/player/performance-stats.d.ts +0 -10
  419. package/dist/esm/src/service/player/performance-stats.js +0 -15
  420. package/dist/esm/src/service/player/player.d.ts +0 -53
  421. package/dist/esm/src/service/player/player.js +0 -90
  422. package/dist/esm/src/service/player/rarity.d.ts +0 -15
  423. package/dist/esm/src/service/player/rarity.js +0 -15
  424. package/dist/esm/src/service/player/role.d.ts +0 -15
  425. package/dist/esm/src/service/player/role.js +0 -44
  426. package/dist/esm/src/service/player/stats.d.ts +0 -12
  427. package/dist/esm/src/service/player/stats.js +0 -63
  428. package/dist/esm/src/service/player/trait.d.ts +0 -51
  429. package/dist/esm/src/service/player/trait.js +0 -80
  430. package/dist/esm/src/service/team/formation.d.ts +0 -30
  431. package/dist/esm/src/service/team/formation.js +0 -119
  432. package/dist/esm/src/service/team/index.d.ts +0 -3
  433. package/dist/esm/src/service/team/index.js +0 -3
  434. package/dist/esm/src/service/team/tactics.d.ts +0 -26
  435. package/dist/esm/src/service/team/tactics.js +0 -27
  436. package/dist/esm/src/service/team/team.d.ts +0 -30
  437. package/dist/esm/src/service/team/team.js +0 -32
  438. package/dist/esm/src/service/utils/index.d.ts +0 -4
  439. package/dist/esm/src/service/utils/index.js +0 -4
  440. package/dist/esm/src/service/utils/number-utils.d.ts +0 -2
  441. package/dist/esm/src/service/utils/number-utils.js +0 -20
  442. package/dist/esm/src/service/utils/object-utils.d.ts +0 -4
  443. package/dist/esm/src/service/utils/object-utils.js +0 -1
  444. package/dist/esm/src/service/utils/rng-utils.d.ts +0 -7
  445. package/dist/esm/src/service/utils/rng-utils.js +0 -27
  446. package/dist/esm/src/service/utils/string-utils.d.ts +0 -2
  447. package/dist/esm/src/service/utils/string-utils.js +0 -11
  448. package/dist/esm/src/stat-config/roles.json +0 -117
  449. package/dist/esm/src/stat-config/traits.json +0 -94
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Match = void 0;
4
- const utils_1 = require("../utils");
5
- const match_team_1 = require("./match-team");
6
- const data_1 = require("../../data");
7
- class Match {
8
- constructor({ id, homeTeam, awayTeam, scheduledDate, sets, status, homeScore, awayScore, winner, VPERs }) {
9
- (0, utils_1.validateUUID)(id);
10
- this.id = id;
11
- this.homeTeam = homeTeam;
12
- this.awayTeam = awayTeam;
13
- this.scheduledDate = scheduledDate;
14
- this.sets = sets;
15
- this.status = status;
16
- this.homeScore = homeScore;
17
- this.awayScore = awayScore;
18
- this.winner = winner;
19
- this.VPERs = VPERs;
20
- }
21
- addSet(set) {
22
- if (this.sets.length >= 5)
23
- throw new Error('SET_AMOUNT_EXCEEDED');
24
- this.sets.push(set);
25
- }
26
- getTeamSets(team) {
27
- const sets = this.sets.reduce((sets, set) => sets + (!set.isOver() ? 0 : set.getWinner() === team ? 1 : 0), 0);
28
- if (sets > 3 || sets < 0)
29
- throw new Error(`INCORRECT_SET_VALUE: ${sets}`);
30
- return sets;
31
- }
32
- getScore() {
33
- return `${this.getTeamSets(match_team_1.MatchTeam.HOME)}-${this.getTeamSets(match_team_1.MatchTeam.AWAY)}`;
34
- }
35
- isOver() {
36
- if (this.status === data_1.StatusEnum.COMPLETE)
37
- return true;
38
- const setsToWin = 3;
39
- const homeSets = this.getTeamSets(match_team_1.MatchTeam.HOME);
40
- const awaySets = this.getTeamSets(match_team_1.MatchTeam.AWAY);
41
- return !(homeSets < setsToWin && awaySets < setsToWin);
42
- }
43
- getWinner() {
44
- if (!this.isOver()) {
45
- throw new Error(`UNFINISHED_MATCH: ${this.id}, homeSets=[${this.sets.map(s => s.homeScore).join(', ')}], awaySets=[${this.sets.map(s => s.awayScore).join(', ')}], status=${this.status}`);
46
- }
47
- const homeSets = this.getTeamSets(match_team_1.MatchTeam.HOME);
48
- const awaySets = this.getTeamSets(match_team_1.MatchTeam.AWAY);
49
- return homeSets > awaySets ? this.homeTeam : this.awayTeam;
50
- }
51
- }
52
- exports.Match = Match;
@@ -1,21 +0,0 @@
1
- import { CourtPosition } from './court-position';
2
- import { RallyEvent } from '../event';
3
- interface RallyParams {
4
- readonly id: string;
5
- readonly order: number;
6
- readonly servingTeamId: string;
7
- readonly events: RallyEvent[];
8
- }
9
- export interface PlayerPosition {
10
- position: CourtPosition;
11
- playerId: string;
12
- }
13
- export declare class Rally {
14
- readonly id: string;
15
- readonly servingTeamId: string;
16
- readonly events: RallyEvent[];
17
- readonly order: number;
18
- constructor({ id, order, servingTeamId, events }: RallyParams);
19
- addEvent(event: RallyEvent): void;
20
- }
21
- export {};
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Rally = void 0;
4
- const utils_1 = require("../utils");
5
- class Rally {
6
- constructor({ id, order, servingTeamId, events }) {
7
- (0, utils_1.validateUUID)(id);
8
- this.id = id;
9
- this.order = order;
10
- this.servingTeamId = servingTeamId;
11
- this.events = events;
12
- }
13
- addEvent(event) {
14
- this.events.push(event);
15
- }
16
- }
17
- exports.Rally = Rally;
@@ -1,13 +0,0 @@
1
- import { BoxScore } from './box-score';
2
- export interface VPERParams {
3
- readonly playerId: string;
4
- readonly matchId: string;
5
- readonly value: number;
6
- }
7
- export declare class VPER {
8
- readonly playerId: string;
9
- readonly matchId: string;
10
- readonly value: number;
11
- constructor({ playerId, matchId, value }: VPERParams);
12
- static computeVPERForMatch(boxScores: BoxScore[]): number;
13
- }
@@ -1,56 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.VPER = void 0;
4
- const WEIGHTS = {
5
- // terminal positive
6
- ATTACK_KILL: 1.0,
7
- SERVE_ACE: 1.0,
8
- BLOCK_SOLO: 1.0,
9
- BLOCK_ASSIST: 0.5,
10
- // creation / continuation
11
- SETTING_ASSIST: 0.7,
12
- BLOCK_TOUCH: 0.2,
13
- DEFENSE_DIG: 0.25,
14
- SETTING_PASS: 0.15,
15
- // reception quality
16
- RECEPTION_PERFECT: 0.35,
17
- RECEPTION_POSITIVE: 0.15,
18
- RECEPTION_OVERPASS: -0.6,
19
- // terminal errors (always point against)
20
- TERMINAL_ERROR: -1.0
21
- };
22
- class VPER {
23
- constructor({ playerId, matchId, value }) {
24
- this.matchId = matchId;
25
- this.playerId = playerId;
26
- this.value = value;
27
- }
28
- static computeVPERForMatch(boxScores) {
29
- let rawSum = 0;
30
- let pointsPlayedSum = 0;
31
- for (const box of boxScores) {
32
- const w = WEIGHTS;
33
- const positive = w.ATTACK_KILL * box.attack.kills +
34
- w.SERVE_ACE * box.serve.aces +
35
- w.BLOCK_SOLO * box.block.solo +
36
- w.BLOCK_ASSIST * box.block.assists +
37
- w.SETTING_ASSIST * box.setting.assists +
38
- w.BLOCK_TOUCH * box.block.touches +
39
- w.DEFENSE_DIG * box.defense.digs +
40
- w.SETTING_PASS * box.setting.pass +
41
- w.RECEPTION_PERFECT * box.reception.perfect +
42
- w.RECEPTION_POSITIVE * box.reception.positive;
43
- const negative = w.RECEPTION_OVERPASS * box.reception.overpasses +
44
- w.TERMINAL_ERROR * (box.attack.errors +
45
- box.serve.errors +
46
- box.reception.errors +
47
- box.defense.errors +
48
- box.block.errors +
49
- box.setting.errors);
50
- rawSum += positive + negative;
51
- pointsPlayedSum += box.misc.pointsPlayed;
52
- }
53
- return 100 * rawSum / Math.max(1, pointsPlayedSum);
54
- }
55
- }
56
- exports.VPER = VPER;
@@ -1,6 +0,0 @@
1
- export * from './player';
2
- export * from './performance-stats';
3
- export * from './trait';
4
- export * from './rarity';
5
- export * from './role';
6
- export * from './stats';
@@ -1,22 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./player"), exports);
18
- __exportStar(require("./performance-stats"), exports);
19
- __exportStar(require("./trait"), exports);
20
- __exportStar(require("./rarity"), exports);
21
- __exportStar(require("./role"), exports);
22
- __exportStar(require("./stats"), exports);
@@ -1,10 +0,0 @@
1
- export declare const performanceStatKeys: readonly ["setting", "serve", "spike", "quick", "power", "awareness", "attack", "backAttack", "reception", "overhand", "bump", "block", "read", "commit", "focus", "defense", "stamina", "reflex"];
2
- export type PerformanceStatsKey = typeof performanceStatKeys[number];
3
- export type PerformanceStatsParams = Record<PerformanceStatsKey, number>;
4
- export interface PerformanceStats extends PerformanceStatsParams {
5
- }
6
- export declare class PerformanceStats {
7
- constructor(opts: PerformanceStatsParams);
8
- static fromAverage(avg: number): PerformanceStats;
9
- toString(): string;
10
- }
@@ -1,19 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PerformanceStats = exports.performanceStatKeys = void 0;
4
- exports.performanceStatKeys = ['setting', 'serve', 'spike', 'quick', 'power', 'awareness', 'attack', 'backAttack',
5
- 'reception', 'overhand', 'bump', 'block', 'read', 'commit', 'focus', 'defense', 'stamina', 'reflex'];
6
- class PerformanceStats {
7
- constructor(opts) {
8
- Object.assign(this, opts);
9
- }
10
- static fromAverage(avg) {
11
- const opts = Object.fromEntries(exports.performanceStatKeys.map((key) => [key, avg]));
12
- return new PerformanceStats(opts);
13
- }
14
- toString() {
15
- return exports.performanceStatKeys.map((key) => `${key}: ${this[key]}`)
16
- .join(', ');
17
- }
18
- }
19
- exports.PerformanceStats = PerformanceStats;
@@ -1,53 +0,0 @@
1
- import { PerformanceStats } from './performance-stats';
2
- import { Trait } from './trait';
3
- import { Country } from '../country';
4
- import { Rarity } from './rarity';
5
- import { Stats } from './stats';
6
- import { Role } from './role';
7
- import { BoxScore, BoxScoreTotals } from '../match';
8
- export declare class Stat {
9
- readonly name: Stats;
10
- readonly value: number;
11
- constructor({ name, value }: {
12
- name: Stats;
13
- value: number;
14
- });
15
- toString(): string;
16
- }
17
- interface PlayerParams {
18
- readonly id: string;
19
- readonly name: Name;
20
- readonly country: Country;
21
- readonly stats: PerformanceStats;
22
- readonly roles: Role[];
23
- readonly traits: Trait[];
24
- readonly rarity: Rarity;
25
- readonly boxScores?: BoxScore[];
26
- readonly boxScoreTotals?: BoxScoreTotals;
27
- }
28
- export declare class Name {
29
- readonly first: string;
30
- readonly last: string;
31
- constructor({ first, last }: {
32
- first: string;
33
- last: string;
34
- });
35
- toString(): string;
36
- }
37
- export declare class Player {
38
- readonly id: string;
39
- readonly name: Name;
40
- readonly country: Country;
41
- readonly stats: PerformanceStats;
42
- readonly roles: Role[];
43
- readonly traits: Trait[];
44
- readonly generalStats: Stat[];
45
- readonly rarity: Rarity;
46
- readonly boxScores?: BoxScore[];
47
- readonly boxScoreTotals?: BoxScoreTotals;
48
- constructor({ id, name, country, stats, roles, traits, rarity, boxScores, boxScoreTotals }: PlayerParams);
49
- static sortPlayers(roles: Role[]): (p1: Player, p2: Player) => number;
50
- static compareStats(p1: Player, p2: Player): number;
51
- toString(): string;
52
- }
53
- export {};
@@ -1,96 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Player = exports.Name = exports.Stat = void 0;
4
- const utils_1 = require("../utils");
5
- const stats_1 = require("./stats");
6
- const role_1 = require("./role");
7
- class Stat {
8
- constructor({ name, value }) {
9
- this.name = name;
10
- this.value = value;
11
- }
12
- toString() {
13
- return `${this.name}: ${this.value}`;
14
- }
15
- }
16
- exports.Stat = Stat;
17
- class Name {
18
- constructor({ first, last }) {
19
- this.first = first;
20
- this.last = last;
21
- }
22
- toString() {
23
- return `${this.first} ${this.last}`;
24
- }
25
- }
26
- exports.Name = Name;
27
- class Player {
28
- constructor({ id, name, country, stats, roles, traits, rarity, boxScores, boxScoreTotals }) {
29
- (0, utils_1.validateUUID)(id);
30
- this.id = id;
31
- this.name = name;
32
- this.country = country;
33
- this.stats = stats;
34
- this.roles = roles;
35
- this.traits = traits;
36
- this.rarity = rarity;
37
- this.boxScores = boxScores;
38
- this.boxScoreTotals = boxScoreTotals;
39
- this.generalStats = Object.values(stats_1.StatsEnum).map((stat) => ({
40
- name: stat,
41
- value: (0, stats_1.calculateStatScore)(stats, stat)
42
- }));
43
- }
44
- // Used as a base sorting function for players
45
- static sortPlayers(roles) {
46
- return (p1, p2) => roles.reduce((x, role) => {
47
- const p2Score = (0, role_1.calculateRoleScore)(p2.stats, role);
48
- const p1Score = (0, role_1.calculateRoleScore)(p1.stats, role);
49
- return x + p2Score - p1Score;
50
- }, 0);
51
- }
52
- static compareStats(p1, p2) {
53
- const compareFn = (acc, current) => {
54
- let x = current.value;
55
- switch (current.name) {
56
- case stats_1.StatsEnum.ATTACK:
57
- x *= 0.19;
58
- break;
59
- case stats_1.StatsEnum.SET:
60
- x *= 0.19;
61
- break;
62
- case stats_1.StatsEnum.RECEIVE:
63
- x *= 0.19;
64
- break;
65
- case stats_1.StatsEnum.BLOCK:
66
- x *= 0.19;
67
- break;
68
- case stats_1.StatsEnum.SERVE:
69
- x *= 0.19;
70
- break;
71
- case stats_1.StatsEnum.STAMINA:
72
- x *= 0.05;
73
- break;
74
- default:
75
- x *= 0;
76
- }
77
- return acc + x;
78
- };
79
- const s1 = p1.generalStats.reduce(compareFn, 0);
80
- const s2 = p2.generalStats.reduce(compareFn, 0);
81
- return s2 - s1;
82
- }
83
- toString() {
84
- return JSON.stringify({
85
- id: this.id,
86
- name: this.name.toString(),
87
- country: this.country.toString(),
88
- stats: this.stats.toString(),
89
- rarity: this.rarity,
90
- roles: `[${this.roles.map(r => r.toString()).join(',')}]`,
91
- traits: `[${this.traits.map(t => t.toString()).join(',')}]`,
92
- generalStats: `[${this.generalStats.map(r => r.toString()).join(',')}]`
93
- });
94
- }
95
- }
96
- exports.Player = Player;
@@ -1,15 +0,0 @@
1
- export declare enum RarityEnum {
2
- COMMON = "COMMON",
3
- RARE = "RARE",
4
- LEGENDARY = "LEGENDARY",
5
- MYTHIC = "MYTHIC",
6
- SPECIAL = "SPECIAL"
7
- }
8
- export type Rarity = RarityEnum.COMMON | RarityEnum.RARE | RarityEnum.LEGENDARY | RarityEnum.MYTHIC | RarityEnum.SPECIAL;
9
- export declare const RarityRanges: {
10
- COMMON: number[];
11
- RARE: number[];
12
- LEGENDARY: number[];
13
- MYTHIC: number[];
14
- SPECIAL: number[];
15
- };
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RarityRanges = exports.RarityEnum = void 0;
4
- var RarityEnum;
5
- (function (RarityEnum) {
6
- RarityEnum["COMMON"] = "COMMON";
7
- RarityEnum["RARE"] = "RARE";
8
- RarityEnum["LEGENDARY"] = "LEGENDARY";
9
- RarityEnum["MYTHIC"] = "MYTHIC";
10
- RarityEnum["SPECIAL"] = "SPECIAL";
11
- })(RarityEnum = exports.RarityEnum || (exports.RarityEnum = {}));
12
- exports.RarityRanges = {
13
- [RarityEnum.COMMON]: [0, 50],
14
- [RarityEnum.RARE]: [51, 70],
15
- [RarityEnum.LEGENDARY]: [71, 85],
16
- [RarityEnum.MYTHIC]: [86, 98],
17
- [RarityEnum.SPECIAL]: [99, 100]
18
- };
@@ -1,15 +0,0 @@
1
- import { PerformanceStats, PerformanceStatsParams } from './performance-stats';
2
- export declare enum RoleEnum {
3
- SETTER = "SETTER",
4
- LIBERO = "LIBERO",
5
- OUTSIDE_HITTER = "OUTSIDE_HITTER",
6
- OPPOSITE_HITTER = "OPPOSITE_HITTER",
7
- MIDDLE_BLOCKER = "MIDDLE_BLOCKER"
8
- }
9
- export type Role = RoleEnum.SETTER | RoleEnum.LIBERO | RoleEnum.MIDDLE_BLOCKER | RoleEnum.OUTSIDE_HITTER | RoleEnum.OPPOSITE_HITTER;
10
- export interface RolesFormula {
11
- role: Role;
12
- weight: PerformanceStatsParams;
13
- }
14
- export declare function calculateRoleScore(stats: PerformanceStats, role: Role): number;
15
- export declare function assignRoles(stats: PerformanceStats): Role[];
@@ -1,52 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.assignRoles = exports.calculateRoleScore = exports.RoleEnum = void 0;
7
- const roles_json_1 = __importDefault(require("../../stat-config/roles.json"));
8
- var RoleEnum;
9
- (function (RoleEnum) {
10
- RoleEnum["SETTER"] = "SETTER";
11
- RoleEnum["LIBERO"] = "LIBERO";
12
- RoleEnum["OUTSIDE_HITTER"] = "OUTSIDE_HITTER";
13
- RoleEnum["OPPOSITE_HITTER"] = "OPPOSITE_HITTER";
14
- RoleEnum["MIDDLE_BLOCKER"] = "MIDDLE_BLOCKER";
15
- })(RoleEnum = exports.RoleEnum || (exports.RoleEnum = {}));
16
- const rolesFormula = roles_json_1.default;
17
- function calculateRoleScore(stats, role) {
18
- const weights = rolesFormula.find(r => r.role === role);
19
- if (weights == null)
20
- throw new Error('COULD_NOT_FIND_ROLE_WEIGHT');
21
- const score = Object.keys(weights.weight)
22
- .reduce((score, key) => {
23
- const stat = stats[key];
24
- const weight = weights.weight[key];
25
- return score + (stat * weight);
26
- }, 0);
27
- return Math.round(score);
28
- }
29
- exports.calculateRoleScore = calculateRoleScore;
30
- function assignRoles(stats) {
31
- const scores = Object.values(RoleEnum)
32
- .map((role) => ({
33
- role,
34
- score: calculateRoleScore(stats, role)
35
- }))
36
- .sort((x, y) => y.score - x.score);
37
- const out = [scores[0].role];
38
- if (scores[1].score >= 75) {
39
- out.push(scores[1].role);
40
- }
41
- if (scores[2].score >= 82) {
42
- out.push(scores[2].role);
43
- }
44
- if (scores[3].score >= 89) {
45
- out.push(scores[3].role);
46
- }
47
- if (scores[4].score >= 95) {
48
- out.push(scores[4].role);
49
- }
50
- return out;
51
- }
52
- exports.assignRoles = assignRoles;
@@ -1,12 +0,0 @@
1
- import { PerformanceStats } from './performance-stats';
2
- export declare enum StatsEnum {
3
- ATTACK = "ATTACK",
4
- SET = "SET",
5
- RECEIVE = "RECEIVE",
6
- SERVE = "SERVE",
7
- BLOCK = "BLOCK",
8
- STAMINA = "STAMINA"
9
- }
10
- export type Stats = StatsEnum.ATTACK | StatsEnum.SET | StatsEnum.RECEIVE | StatsEnum.SERVE | StatsEnum.BLOCK | StatsEnum.STAMINA;
11
- export declare function calculateStatScore(performanceStats: PerformanceStats, statName: Stats): number;
12
- export declare function getMultipliers(statName: Stats, performanceStats?: PerformanceStats): any;
@@ -1,68 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMultipliers = exports.calculateStatScore = exports.StatsEnum = void 0;
4
- var StatsEnum;
5
- (function (StatsEnum) {
6
- StatsEnum["ATTACK"] = "ATTACK";
7
- StatsEnum["SET"] = "SET";
8
- StatsEnum["RECEIVE"] = "RECEIVE";
9
- StatsEnum["SERVE"] = "SERVE";
10
- StatsEnum["BLOCK"] = "BLOCK";
11
- StatsEnum["STAMINA"] = "STAMINA";
12
- })(StatsEnum = exports.StatsEnum || (exports.StatsEnum = {}));
13
- function calculateStatScore(performanceStats, statName) {
14
- const multipliers = getMultipliers(statName, performanceStats);
15
- const score = Object.entries(multipliers)
16
- .reduce((total, [key, value]) => total + value * performanceStats[key], 0);
17
- return Math.round(score);
18
- }
19
- exports.calculateStatScore = calculateStatScore;
20
- function getMultipliers(statName, performanceStats) {
21
- switch (statName) {
22
- case StatsEnum.ATTACK:
23
- return {
24
- spike: 0.55,
25
- backAttack: 0.1,
26
- power: performanceStats == null ? 0.125 : performanceStats.power > performanceStats.quick ? 0.2 : 0.05,
27
- quick: performanceStats == null ? 0.125 : performanceStats.quick > performanceStats.power ? 0.2 : 0.05,
28
- awareness: 0.05,
29
- attack: 0.05
30
- };
31
- case StatsEnum.SET:
32
- return {
33
- setting: 0.75,
34
- overhand: 0.1,
35
- awareness: 0.075,
36
- attack: 0.075
37
- };
38
- case StatsEnum.RECEIVE:
39
- return {
40
- reception: 0.75,
41
- overhand: 0.015,
42
- bump: 0.15,
43
- focus: 0.015,
44
- defense: 0.055,
45
- reflex: 0.015
46
- };
47
- case StatsEnum.SERVE:
48
- return {
49
- serve: 0.85,
50
- awareness: 0.075,
51
- attack: 0.075
52
- };
53
- case StatsEnum.BLOCK:
54
- return {
55
- block: 0.65,
56
- read: performanceStats == null ? 0.125 : performanceStats.read > performanceStats.commit ? 0.2 : 0.05,
57
- commit: performanceStats == null ? 0.125 : performanceStats.commit > performanceStats.read ? 0.2 : 0.05,
58
- focus: 0.04,
59
- defense: 0.04,
60
- reflex: 0.02
61
- };
62
- case StatsEnum.STAMINA:
63
- return { stamina: 1 };
64
- default:
65
- throw new Error('INVALID_STAT');
66
- }
67
- }
68
- exports.getMultipliers = getMultipliers;
@@ -1,51 +0,0 @@
1
- import { Rarity } from './rarity';
2
- import { Role } from './role';
3
- interface TraitProps {
4
- readonly name: Trait;
5
- readonly modifier: number;
6
- readonly chance: number;
7
- readonly roles: Role[];
8
- }
9
- export declare enum TraitEnum {
10
- /**
11
- * When triggered, all actions before the net crossing have a bonus.
12
- * Can only be triggered during the first or second touch.
13
- */
14
- MASTER_MIND = "MASTER_MIND",
15
- /**
16
- * When this player is part of the front row, they will always be part of the blocking block
17
- */
18
- MOVING_WALL = "MOVING_WALL",
19
- /**
20
- * Enables the player making the second touch to spike or dump
21
- */
22
- SURPRISE_ATTACK = "SURPRISE_ATTACK",
23
- /**
24
- * Boosts the stat of the action taken and allows the player to choose the best target for the action.
25
- */
26
- MARKSMAN = "MARKSMAN",
27
- /**
28
- * The server will perform an extra strong serve.
29
- */
30
- METEOR_SERVE = "METEOR_SERVE",
31
- /**
32
- * The player has a 50% chance to perform an action with no energy decrease
33
- */
34
- VIGOROUS = "VIGOROUS",
35
- /**
36
- * The player with this trait has a chance to take the receiver's place if their reception stat is higher.
37
- */
38
- GUARDIAN = "GUARDIAN",
39
- /**
40
- * Enables the server to perform a float serve, which checks against receiver overhand instead.
41
- */
42
- FLOAT_SERVE = "FLOAT_SERVE",
43
- /**
44
- * Gives the player a chance to perform a perfect reception.
45
- */
46
- DEFENSIVE_SPECIALIST = "DEFENSIVE_SPECIALIST"
47
- }
48
- export type Trait = TraitEnum.FLOAT_SERVE | TraitEnum.SURPRISE_ATTACK | TraitEnum.GUARDIAN | TraitEnum.MASTER_MIND | TraitEnum.MOVING_WALL | TraitEnum.MARKSMAN | TraitEnum.METEOR_SERVE | TraitEnum.VIGOROUS | TraitEnum.DEFENSIVE_SPECIALIST;
49
- export declare function assignTraits(roles: Role[], rarity: Rarity): Trait[];
50
- export declare const traitMap: Map<Trait, TraitProps>;
51
- export {};