volleyballsimtypes 0.0.162 → 0.0.165
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.
- package/dist/cjs/src/data/common/events.d.ts +82 -0
- package/dist/cjs/src/data/common/events.js +97 -0
- package/dist/cjs/src/data/common/index.d.ts +2 -0
- package/dist/cjs/src/data/common/index.js +18 -0
- package/dist/cjs/src/data/common/status.d.ts +8 -0
- package/dist/cjs/src/data/common/status.js +11 -0
- package/dist/cjs/src/data/index.d.ts +4 -0
- package/dist/cjs/src/data/index.js +22 -0
- package/dist/cjs/src/data/init-models.d.ts +2 -0
- package/dist/cjs/src/data/init-models.js +204 -0
- package/dist/cjs/src/data/models/coach.d.ts +40 -0
- package/dist/cjs/src/data/models/coach.js +55 -0
- package/dist/cjs/src/data/models/competition-champion.d.ts +23 -0
- package/dist/cjs/src/data/models/competition-champion.js +38 -0
- package/dist/cjs/src/data/models/competition-match.d.ts +29 -0
- package/dist/cjs/src/data/models/competition-match.js +46 -0
- package/dist/cjs/src/data/models/competition-teams.d.ts +23 -0
- package/dist/cjs/src/data/models/competition-teams.js +42 -0
- package/dist/cjs/src/data/models/competition.d.ts +70 -0
- package/dist/cjs/src/data/models/competition.js +44 -0
- package/dist/cjs/src/data/models/country.d.ts +61 -0
- package/dist/cjs/src/data/models/country.js +34 -0
- package/dist/cjs/src/data/models/draft-pick.d.ts +31 -0
- package/dist/cjs/src/data/models/draft-pick.js +50 -0
- package/dist/cjs/src/data/models/draft.d.ts +29 -0
- package/dist/cjs/src/data/models/draft.js +34 -0
- package/dist/cjs/src/data/models/index.d.ts +25 -0
- package/dist/cjs/src/data/models/index.js +41 -0
- package/dist/cjs/src/data/models/iteration.d.ts +26 -0
- package/dist/cjs/src/data/models/iteration.js +30 -0
- package/dist/cjs/src/data/models/league-season.d.ts +23 -0
- package/dist/cjs/src/data/models/league-season.js +38 -0
- package/dist/cjs/src/data/models/league.d.ts +44 -0
- package/dist/cjs/src/data/models/league.js +38 -0
- package/dist/cjs/src/data/models/match-rating.d.ts +27 -0
- package/dist/cjs/src/data/models/match-rating.js +52 -0
- package/dist/cjs/src/data/models/match-result.d.ts +27 -0
- package/dist/cjs/src/data/models/match-result.js +38 -0
- package/dist/cjs/src/data/models/match-set-stats.d.ts +58 -0
- package/dist/cjs/src/data/models/match-set-stats.js +127 -0
- package/dist/cjs/src/data/models/match-set.d.ts +85 -0
- package/dist/cjs/src/data/models/match-set.js +51 -0
- package/dist/cjs/src/data/models/match.d.ts +72 -0
- package/dist/cjs/src/data/models/match.js +52 -0
- package/dist/cjs/src/data/models/performance-stats.d.ts +40 -0
- package/dist/cjs/src/data/models/performance-stats.js +85 -0
- package/dist/cjs/src/data/models/player-team.d.ts +28 -0
- package/dist/cjs/src/data/models/player-team.js +52 -0
- package/dist/cjs/src/data/models/player-trait.d.ts +23 -0
- package/dist/cjs/src/data/models/player-trait.js +42 -0
- package/dist/cjs/src/data/models/player.d.ts +128 -0
- package/dist/cjs/src/data/models/player.js +51 -0
- package/dist/cjs/src/data/models/rally.d.ts +29 -0
- package/dist/cjs/src/data/models/rally.js +50 -0
- package/dist/cjs/src/data/models/set-position.d.ts +29 -0
- package/dist/cjs/src/data/models/set-position.js +50 -0
- package/dist/cjs/src/data/models/team.d.ts +162 -0
- package/dist/cjs/src/data/models/team.js +63 -0
- package/dist/cjs/src/data/models/trait.d.ts +37 -0
- package/dist/cjs/src/data/models/trait.js +30 -0
- package/dist/cjs/src/data/models/user.d.ts +22 -0
- package/dist/cjs/src/data/models/user.js +57 -0
- package/dist/cjs/src/data/transformers/coach.d.ts +5 -0
- package/dist/cjs/src/data/transformers/coach.js +29 -0
- package/dist/cjs/src/data/transformers/country.d.ts +5 -0
- package/dist/cjs/src/data/transformers/country.js +20 -0
- package/dist/cjs/src/data/transformers/court-position.d.ts +5 -0
- package/dist/cjs/src/data/transformers/court-position.js +31 -0
- package/dist/cjs/src/data/transformers/draft-pick.d.ts +5 -0
- package/dist/cjs/src/data/transformers/draft-pick.js +22 -0
- package/dist/cjs/src/data/transformers/draft.d.ts +5 -0
- package/dist/cjs/src/data/transformers/draft.js +23 -0
- package/dist/cjs/src/data/transformers/formation.d.ts +5 -0
- package/dist/cjs/src/data/transformers/formation.js +12 -0
- package/dist/cjs/src/data/transformers/index.d.ts +25 -0
- package/dist/cjs/src/data/transformers/index.js +41 -0
- package/dist/cjs/src/data/transformers/iteration.d.ts +5 -0
- package/dist/cjs/src/data/transformers/iteration.js +18 -0
- package/dist/cjs/src/data/transformers/league.d.ts +5 -0
- package/dist/cjs/src/data/transformers/league.js +27 -0
- package/dist/cjs/src/data/transformers/match-rating.d.ts +4 -0
- package/dist/cjs/src/data/transformers/match-rating.js +16 -0
- package/dist/cjs/src/data/transformers/match-set-stats.d.ts +5 -0
- package/dist/cjs/src/data/transformers/match-set-stats.js +61 -0
- package/dist/cjs/src/data/transformers/match-set.d.ts +5 -0
- package/dist/cjs/src/data/transformers/match-set.js +39 -0
- package/dist/cjs/src/data/transformers/match.d.ts +5 -0
- package/dist/cjs/src/data/transformers/match.js +32 -0
- package/dist/cjs/src/data/transformers/performance-stats.d.ts +5 -0
- package/dist/cjs/src/data/transformers/performance-stats.js +37 -0
- package/dist/cjs/src/data/transformers/player-team.d.ts +3 -0
- package/dist/cjs/src/data/transformers/player-team.js +12 -0
- package/dist/cjs/src/data/transformers/player.d.ts +5 -0
- package/dist/cjs/src/data/transformers/player.js +32 -0
- package/dist/cjs/src/data/transformers/rally.d.ts +5 -0
- package/dist/cjs/src/data/transformers/rally.js +27 -0
- package/dist/cjs/src/data/transformers/role.d.ts +5 -0
- package/dist/cjs/src/data/transformers/role.js +25 -0
- package/dist/cjs/src/data/transformers/season-match.d.ts +4 -0
- package/dist/cjs/src/data/transformers/season-match.js +16 -0
- package/dist/cjs/src/data/transformers/season.d.ts +5 -0
- package/dist/cjs/src/data/transformers/season.js +40 -0
- package/dist/cjs/src/data/transformers/set-position.d.ts +5 -0
- package/dist/cjs/src/data/transformers/set-position.js +20 -0
- package/dist/cjs/src/data/transformers/stage.d.ts +5 -0
- package/dist/cjs/src/data/transformers/stage.js +25 -0
- package/dist/cjs/src/data/transformers/team.d.ts +5 -0
- package/dist/cjs/src/data/transformers/team.js +30 -0
- package/dist/cjs/src/data/transformers/tournament-match.d.ts +5 -0
- package/dist/cjs/src/data/transformers/tournament-match.js +23 -0
- package/dist/cjs/src/data/transformers/tournament.d.ts +5 -0
- package/dist/cjs/src/data/transformers/tournament.js +42 -0
- package/dist/cjs/src/data/transformers/trait.d.ts +5 -0
- package/dist/cjs/src/data/transformers/trait.js +19 -0
- package/dist/cjs/src/formula/event.formula.json +125 -0
- package/dist/cjs/src/formula/events.d.ts +125 -0
- package/dist/cjs/src/formula/events.js +8 -0
- package/dist/cjs/src/formula/index.d.ts +3 -0
- package/dist/cjs/src/formula/index.js +19 -0
- package/dist/cjs/src/formula/role.formula.json +82 -0
- package/dist/cjs/src/formula/roles.d.ts +20 -0
- package/dist/cjs/src/formula/roles.js +9 -0
- package/dist/cjs/src/formula/stat.formula.json +66 -0
- package/dist/cjs/src/formula/stats.d.ts +10 -0
- package/dist/cjs/src/formula/stats.js +18 -0
- package/dist/cjs/src/index.d.ts +3 -0
- package/dist/cjs/src/index.js +19 -0
- package/dist/cjs/src/service/coach/coach.d.ts +19 -0
- package/dist/cjs/src/service/coach/coach.js +15 -0
- package/dist/cjs/src/service/coach/formation.d.ts +30 -0
- package/dist/cjs/src/service/coach/formation.js +123 -0
- package/dist/cjs/src/service/coach/index.d.ts +2 -0
- package/dist/cjs/src/service/coach/index.js +18 -0
- package/dist/cjs/src/service/competition/index.d.ts +11 -0
- package/dist/cjs/src/service/competition/index.js +29 -0
- package/dist/cjs/src/service/competition/iteration.d.ts +10 -0
- package/dist/cjs/src/service/competition/iteration.js +12 -0
- package/dist/cjs/src/service/competition/league.d.ts +16 -0
- package/dist/cjs/src/service/competition/league.js +12 -0
- package/dist/cjs/src/service/competition/season.d.ts +26 -0
- package/dist/cjs/src/service/competition/season.js +32 -0
- package/dist/cjs/src/service/competition/stage.d.ts +11 -0
- package/dist/cjs/src/service/competition/stage.js +27 -0
- package/dist/cjs/src/service/competition/standing.d.ts +28 -0
- package/dist/cjs/src/service/competition/standing.js +80 -0
- package/dist/cjs/src/service/competition/tournament-match.d.ts +14 -0
- package/dist/cjs/src/service/competition/tournament-match.js +13 -0
- package/dist/cjs/src/service/competition/tournament.d.ts +23 -0
- package/dist/cjs/src/service/competition/tournament.js +23 -0
- package/dist/cjs/src/service/country/country.d.ts +17 -0
- package/dist/cjs/src/service/country/country.js +22 -0
- package/dist/cjs/src/service/country/index.d.ts +1 -0
- package/dist/cjs/src/service/country/index.js +17 -0
- package/dist/cjs/src/service/draft/draft-pick.d.ts +14 -0
- package/dist/cjs/src/service/draft/draft-pick.js +11 -0
- package/dist/cjs/src/service/draft/draft.d.ts +15 -0
- package/dist/cjs/src/service/draft/draft.js +12 -0
- package/dist/cjs/src/service/draft/index.d.ts +2 -0
- package/dist/cjs/src/service/draft/index.js +18 -0
- package/dist/cjs/src/service/event/index.d.ts +1 -0
- package/dist/cjs/src/service/event/index.js +17 -0
- package/dist/cjs/src/service/event/rally-event.d.ts +11 -0
- package/dist/cjs/src/service/event/rally-event.js +10 -0
- package/dist/cjs/src/service/index.d.ts +9 -0
- package/dist/cjs/src/service/index.js +25 -0
- package/dist/cjs/src/service/match/court-position.d.ts +34 -0
- package/dist/cjs/src/service/match/court-position.js +70 -0
- package/dist/cjs/src/service/match/index.d.ts +6 -0
- package/dist/cjs/src/service/match/index.js +22 -0
- package/dist/cjs/src/service/match/match-rating.d.ts +35 -0
- package/dist/cjs/src/service/match/match-rating.js +65 -0
- package/dist/cjs/src/service/match/match-set.d.ts +65 -0
- package/dist/cjs/src/service/match/match-set.js +60 -0
- package/dist/cjs/src/service/match/match-team.d.ts +7 -0
- package/dist/cjs/src/service/match/match-team.js +20 -0
- package/dist/cjs/src/service/match/match.d.ts +44 -0
- package/dist/cjs/src/service/match/match.js +68 -0
- package/dist/cjs/src/service/match/rally.d.ts +22 -0
- package/dist/cjs/src/service/match/rally.js +17 -0
- package/dist/cjs/src/service/player/index.d.ts +5 -0
- package/dist/cjs/src/service/player/index.js +21 -0
- package/dist/cjs/src/service/player/performance-stats.d.ts +30 -0
- package/dist/cjs/src/service/player/performance-stats.js +38 -0
- package/dist/cjs/src/service/player/player.d.ts +49 -0
- package/dist/cjs/src/service/player/player.js +114 -0
- package/dist/cjs/src/service/player/rarity.d.ts +14 -0
- package/dist/cjs/src/service/player/rarity.js +18 -0
- package/dist/cjs/src/service/player/role.d.ts +16 -0
- package/dist/cjs/src/service/player/role.js +44 -0
- package/dist/cjs/src/service/player/trait.d.ts +22 -0
- package/dist/cjs/src/service/player/trait.js +148 -0
- package/dist/cjs/src/service/team/index.d.ts +1 -0
- package/dist/cjs/src/service/team/index.js +17 -0
- package/dist/cjs/src/service/team/team.d.ts +31 -0
- package/dist/cjs/src/service/team/team.js +36 -0
- package/dist/cjs/src/service/utils/index.d.ts +2 -0
- package/dist/cjs/src/service/utils/index.js +18 -0
- package/dist/cjs/src/service/utils/object-utils.d.ts +1 -0
- package/dist/cjs/src/service/utils/object-utils.js +4 -0
- package/dist/cjs/src/service/utils/string-utils.d.ts +2 -0
- package/dist/cjs/src/service/utils/string-utils.js +16 -0
- package/dist/esm/src/data/common/events.d.ts +82 -0
- package/dist/esm/src/data/common/events.js +94 -0
- package/dist/esm/src/data/common/index.d.ts +2 -0
- package/dist/esm/src/data/common/index.js +2 -0
- package/dist/esm/src/data/common/status.d.ts +8 -0
- package/dist/esm/src/data/common/status.js +8 -0
- package/dist/esm/src/data/index.d.ts +4 -0
- package/dist/esm/src/data/index.js +4 -0
- package/dist/esm/src/data/init-models.d.ts +2 -0
- package/dist/esm/src/data/init-models.js +200 -0
- package/dist/esm/src/data/models/coach.d.ts +40 -0
- package/dist/esm/src/data/models/coach.js +51 -0
- package/dist/esm/src/data/models/competition-champion.d.ts +23 -0
- package/dist/esm/src/data/models/competition-champion.js +34 -0
- package/dist/esm/src/data/models/competition-match.d.ts +29 -0
- package/dist/esm/src/data/models/competition-match.js +42 -0
- package/dist/esm/src/data/models/competition-teams.d.ts +23 -0
- package/dist/esm/src/data/models/competition-teams.js +38 -0
- package/dist/esm/src/data/models/competition.d.ts +70 -0
- package/dist/esm/src/data/models/competition.js +40 -0
- package/dist/esm/src/data/models/country.d.ts +61 -0
- package/dist/esm/src/data/models/country.js +30 -0
- package/dist/esm/src/data/models/draft-pick.d.ts +31 -0
- package/dist/esm/src/data/models/draft-pick.js +46 -0
- package/dist/esm/src/data/models/draft.d.ts +29 -0
- package/dist/esm/src/data/models/draft.js +30 -0
- package/dist/esm/src/data/models/index.d.ts +25 -0
- package/dist/esm/src/data/models/index.js +25 -0
- package/dist/esm/src/data/models/iteration.d.ts +26 -0
- package/dist/esm/src/data/models/iteration.js +26 -0
- package/dist/esm/src/data/models/league-season.d.ts +23 -0
- package/dist/esm/src/data/models/league-season.js +34 -0
- package/dist/esm/src/data/models/league.d.ts +44 -0
- package/dist/esm/src/data/models/league.js +34 -0
- package/dist/esm/src/data/models/match-rating.d.ts +27 -0
- package/dist/esm/src/data/models/match-rating.js +48 -0
- package/dist/esm/src/data/models/match-result.d.ts +27 -0
- package/dist/esm/src/data/models/match-result.js +34 -0
- package/dist/esm/src/data/models/match-set-stats.d.ts +58 -0
- package/dist/esm/src/data/models/match-set-stats.js +123 -0
- package/dist/esm/src/data/models/match-set.d.ts +85 -0
- package/dist/esm/src/data/models/match-set.js +47 -0
- package/dist/esm/src/data/models/match.d.ts +72 -0
- package/dist/esm/src/data/models/match.js +48 -0
- package/dist/esm/src/data/models/performance-stats.d.ts +40 -0
- package/dist/esm/src/data/models/performance-stats.js +81 -0
- package/dist/esm/src/data/models/player-team.d.ts +28 -0
- package/dist/esm/src/data/models/player-team.js +48 -0
- package/dist/esm/src/data/models/player-trait.d.ts +23 -0
- package/dist/esm/src/data/models/player-trait.js +38 -0
- package/dist/esm/src/data/models/player.d.ts +128 -0
- package/dist/esm/src/data/models/player.js +47 -0
- package/dist/esm/src/data/models/rally.d.ts +29 -0
- package/dist/esm/src/data/models/rally.js +46 -0
- package/dist/esm/src/data/models/set-position.d.ts +29 -0
- package/dist/esm/src/data/models/set-position.js +46 -0
- package/dist/esm/src/data/models/team.d.ts +162 -0
- package/dist/esm/src/data/models/team.js +59 -0
- package/dist/esm/src/data/models/trait.d.ts +37 -0
- package/dist/esm/src/data/models/trait.js +26 -0
- package/dist/esm/src/data/models/user.d.ts +22 -0
- package/dist/esm/src/data/models/user.js +53 -0
- package/dist/esm/src/data/transformers/coach.d.ts +5 -0
- package/dist/esm/src/data/transformers/coach.js +25 -0
- package/dist/esm/src/data/transformers/country.d.ts +5 -0
- package/dist/esm/src/data/transformers/country.js +16 -0
- package/dist/esm/src/data/transformers/court-position.d.ts +5 -0
- package/dist/esm/src/data/transformers/court-position.js +27 -0
- package/dist/esm/src/data/transformers/draft-pick.d.ts +5 -0
- package/dist/esm/src/data/transformers/draft-pick.js +18 -0
- package/dist/esm/src/data/transformers/draft.d.ts +5 -0
- package/dist/esm/src/data/transformers/draft.js +19 -0
- package/dist/esm/src/data/transformers/formation.d.ts +5 -0
- package/dist/esm/src/data/transformers/formation.js +8 -0
- package/dist/esm/src/data/transformers/index.d.ts +25 -0
- package/dist/esm/src/data/transformers/index.js +25 -0
- package/dist/esm/src/data/transformers/iteration.d.ts +5 -0
- package/dist/esm/src/data/transformers/iteration.js +14 -0
- package/dist/esm/src/data/transformers/league.d.ts +5 -0
- package/dist/esm/src/data/transformers/league.js +23 -0
- package/dist/esm/src/data/transformers/match-rating.d.ts +4 -0
- package/dist/esm/src/data/transformers/match-rating.js +13 -0
- package/dist/esm/src/data/transformers/match-set-stats.d.ts +5 -0
- package/dist/esm/src/data/transformers/match-set-stats.js +57 -0
- package/dist/esm/src/data/transformers/match-set.d.ts +5 -0
- package/dist/esm/src/data/transformers/match-set.js +35 -0
- package/dist/esm/src/data/transformers/match.d.ts +5 -0
- package/dist/esm/src/data/transformers/match.js +28 -0
- package/dist/esm/src/data/transformers/performance-stats.d.ts +5 -0
- package/dist/esm/src/data/transformers/performance-stats.js +33 -0
- package/dist/esm/src/data/transformers/player-team.d.ts +3 -0
- package/dist/esm/src/data/transformers/player-team.js +9 -0
- package/dist/esm/src/data/transformers/player.d.ts +5 -0
- package/dist/esm/src/data/transformers/player.js +28 -0
- package/dist/esm/src/data/transformers/rally.d.ts +5 -0
- package/dist/esm/src/data/transformers/rally.js +23 -0
- package/dist/esm/src/data/transformers/role.d.ts +5 -0
- package/dist/esm/src/data/transformers/role.js +21 -0
- package/dist/esm/src/data/transformers/season-match.d.ts +4 -0
- package/dist/esm/src/data/transformers/season-match.js +13 -0
- package/dist/esm/src/data/transformers/season.d.ts +5 -0
- package/dist/esm/src/data/transformers/season.js +36 -0
- package/dist/esm/src/data/transformers/set-position.d.ts +5 -0
- package/dist/esm/src/data/transformers/set-position.js +16 -0
- package/dist/esm/src/data/transformers/stage.d.ts +5 -0
- package/dist/esm/src/data/transformers/stage.js +21 -0
- package/dist/esm/src/data/transformers/team.d.ts +5 -0
- package/dist/esm/src/data/transformers/team.js +26 -0
- package/dist/esm/src/data/transformers/tournament-match.d.ts +5 -0
- package/dist/esm/src/data/transformers/tournament-match.js +19 -0
- package/dist/esm/src/data/transformers/tournament.d.ts +5 -0
- package/dist/esm/src/data/transformers/tournament.js +38 -0
- package/dist/esm/src/data/transformers/trait.d.ts +5 -0
- package/dist/esm/src/data/transformers/trait.js +15 -0
- package/dist/esm/src/formula/event.formula.json +125 -0
- package/dist/esm/src/formula/events.d.ts +125 -0
- package/dist/esm/src/formula/events.js +2 -0
- package/dist/esm/src/formula/index.d.ts +3 -0
- package/dist/esm/src/formula/index.js +3 -0
- package/dist/esm/src/formula/role.formula.json +82 -0
- package/dist/esm/src/formula/roles.d.ts +20 -0
- package/dist/esm/src/formula/roles.js +3 -0
- package/dist/esm/src/formula/stat.formula.json +66 -0
- package/dist/esm/src/formula/stats.d.ts +10 -0
- package/dist/esm/src/formula/stats.js +11 -0
- package/dist/esm/src/index.d.ts +3 -0
- package/dist/esm/src/index.js +3 -0
- package/dist/esm/src/service/coach/coach.d.ts +19 -0
- package/dist/esm/src/service/coach/coach.js +11 -0
- package/dist/esm/src/service/coach/formation.d.ts +30 -0
- package/dist/esm/src/service/coach/formation.js +119 -0
- package/dist/esm/src/service/coach/index.d.ts +2 -0
- package/dist/esm/src/service/coach/index.js +2 -0
- package/dist/esm/src/service/competition/index.d.ts +11 -0
- package/dist/esm/src/service/competition/index.js +12 -0
- package/dist/esm/src/service/competition/iteration.d.ts +10 -0
- package/dist/esm/src/service/competition/iteration.js +8 -0
- package/dist/esm/src/service/competition/league.d.ts +16 -0
- package/dist/esm/src/service/competition/league.js +8 -0
- package/dist/esm/src/service/competition/season.d.ts +26 -0
- package/dist/esm/src/service/competition/season.js +28 -0
- package/dist/esm/src/service/competition/stage.d.ts +11 -0
- package/dist/esm/src/service/competition/stage.js +24 -0
- package/dist/esm/src/service/competition/standing.d.ts +28 -0
- package/dist/esm/src/service/competition/standing.js +76 -0
- package/dist/esm/src/service/competition/tournament-match.d.ts +14 -0
- package/dist/esm/src/service/competition/tournament-match.js +9 -0
- package/dist/esm/src/service/competition/tournament.d.ts +23 -0
- package/dist/esm/src/service/competition/tournament.js +19 -0
- package/dist/esm/src/service/country/country.d.ts +17 -0
- package/dist/esm/src/service/country/country.js +18 -0
- package/dist/esm/src/service/country/index.d.ts +1 -0
- package/dist/esm/src/service/country/index.js +1 -0
- package/dist/esm/src/service/draft/draft-pick.d.ts +14 -0
- package/dist/esm/src/service/draft/draft-pick.js +7 -0
- package/dist/esm/src/service/draft/draft.d.ts +15 -0
- package/dist/esm/src/service/draft/draft.js +8 -0
- package/dist/esm/src/service/draft/index.d.ts +2 -0
- package/dist/esm/src/service/draft/index.js +2 -0
- package/dist/esm/src/service/event/index.d.ts +1 -0
- package/dist/esm/src/service/event/index.js +1 -0
- package/dist/esm/src/service/event/rally-event.d.ts +11 -0
- package/dist/esm/src/service/event/rally-event.js +6 -0
- package/dist/esm/src/service/index.d.ts +9 -0
- package/dist/esm/src/service/index.js +9 -0
- package/dist/esm/src/service/match/court-position.d.ts +34 -0
- package/dist/esm/src/service/match/court-position.js +62 -0
- package/dist/esm/src/service/match/index.d.ts +6 -0
- package/dist/esm/src/service/match/index.js +6 -0
- package/dist/esm/src/service/match/match-rating.d.ts +35 -0
- package/dist/esm/src/service/match/match-rating.js +61 -0
- package/dist/esm/src/service/match/match-set.d.ts +65 -0
- package/dist/esm/src/service/match/match-set.js +56 -0
- package/dist/esm/src/service/match/match-team.d.ts +7 -0
- package/dist/esm/src/service/match/match-team.js +17 -0
- package/dist/esm/src/service/match/match.d.ts +44 -0
- package/dist/esm/src/service/match/match.js +64 -0
- package/dist/esm/src/service/match/rally.d.ts +22 -0
- package/dist/esm/src/service/match/rally.js +13 -0
- package/dist/esm/src/service/player/index.d.ts +5 -0
- package/dist/esm/src/service/player/index.js +5 -0
- package/dist/esm/src/service/player/performance-stats.d.ts +30 -0
- package/dist/esm/src/service/player/performance-stats.js +34 -0
- package/dist/esm/src/service/player/player.d.ts +49 -0
- package/dist/esm/src/service/player/player.js +85 -0
- package/dist/esm/src/service/player/rarity.d.ts +14 -0
- package/dist/esm/src/service/player/rarity.js +15 -0
- package/dist/esm/src/service/player/role.d.ts +16 -0
- package/dist/esm/src/service/player/role.js +40 -0
- package/dist/esm/src/service/player/trait.d.ts +22 -0
- package/dist/esm/src/service/player/trait.js +121 -0
- package/dist/esm/src/service/team/index.d.ts +1 -0
- package/dist/esm/src/service/team/index.js +1 -0
- package/dist/esm/src/service/team/team.d.ts +31 -0
- package/dist/esm/src/service/team/team.js +32 -0
- package/dist/esm/src/service/utils/index.d.ts +2 -0
- package/dist/esm/src/service/utils/index.js +2 -0
- package/dist/esm/src/service/utils/object-utils.d.ts +1 -0
- package/dist/esm/src/service/utils/object-utils.js +1 -0
- package/dist/esm/src/service/utils/string-utils.d.ts +2 -0
- package/dist/esm/src/service/utils/string-utils.js +11 -0
- package/package.json +1 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Season } from './season';
|
|
2
|
+
import { Country } from '../country';
|
|
3
|
+
interface LeagueOpts {
|
|
4
|
+
readonly id: string;
|
|
5
|
+
readonly name: string;
|
|
6
|
+
readonly country: Country;
|
|
7
|
+
readonly seasons: Season[];
|
|
8
|
+
}
|
|
9
|
+
export declare class League {
|
|
10
|
+
readonly id: string;
|
|
11
|
+
readonly name: string;
|
|
12
|
+
readonly seasons: Season[];
|
|
13
|
+
readonly country: Country;
|
|
14
|
+
constructor({ id, name, country, seasons }: LeagueOpts);
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Team } from '../team';
|
|
2
|
+
import { Match } from '../match';
|
|
3
|
+
import { Standing } from './standing';
|
|
4
|
+
import { Iteration } from './iteration';
|
|
5
|
+
import { StatusEnum } from '../../data';
|
|
6
|
+
interface SeasonOpts {
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly teams: Team[];
|
|
9
|
+
readonly matches: Match[];
|
|
10
|
+
readonly iteration: Iteration;
|
|
11
|
+
readonly champion?: Team;
|
|
12
|
+
readonly status: StatusEnum;
|
|
13
|
+
}
|
|
14
|
+
export declare class Season {
|
|
15
|
+
readonly id: string;
|
|
16
|
+
readonly teams: Team[];
|
|
17
|
+
readonly matches: Match[];
|
|
18
|
+
readonly iteration: Iteration;
|
|
19
|
+
readonly standings: Standing[];
|
|
20
|
+
readonly status: StatusEnum;
|
|
21
|
+
champion?: Team;
|
|
22
|
+
constructor({ id, iteration, teams, matches, champion, status }: SeasonOpts);
|
|
23
|
+
calculateStandings(): Standing[];
|
|
24
|
+
updateStandings(): void;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Standing } from './standing';
|
|
2
|
+
export class Season {
|
|
3
|
+
constructor({ id, iteration, teams, matches, champion, status }) {
|
|
4
|
+
this.id = id;
|
|
5
|
+
this.teams = teams;
|
|
6
|
+
this.matches = matches;
|
|
7
|
+
this.iteration = iteration;
|
|
8
|
+
this.champion = champion;
|
|
9
|
+
this.standings = this.calculateStandings();
|
|
10
|
+
this.status = status;
|
|
11
|
+
}
|
|
12
|
+
calculateStandings() {
|
|
13
|
+
return this.teams.map(team => {
|
|
14
|
+
const standing = new Standing({ team });
|
|
15
|
+
standing.calculateStanding(this.matches);
|
|
16
|
+
return standing;
|
|
17
|
+
}).sort(Standing.sortFn);
|
|
18
|
+
}
|
|
19
|
+
updateStandings() {
|
|
20
|
+
if (this.matches == null || this.matches.length < 1)
|
|
21
|
+
throw new Error('NO_MATCHES');
|
|
22
|
+
this.standings.length = 0;
|
|
23
|
+
this.standings.push(...this.calculateStandings());
|
|
24
|
+
if (this.matches.every((match) => match.isOver())) {
|
|
25
|
+
this.champion = this.standings[0].team;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export var Stage;
|
|
2
|
+
(function (Stage) {
|
|
3
|
+
Stage[Stage["ROUND_OF_8"] = 8] = "ROUND_OF_8";
|
|
4
|
+
Stage[Stage["QUARTERFINALS"] = 4] = "QUARTERFINALS";
|
|
5
|
+
Stage[Stage["SEMIFINALS"] = 2] = "SEMIFINALS";
|
|
6
|
+
Stage[Stage["FINAL"] = 1] = "FINAL";
|
|
7
|
+
Stage[Stage["LEAGUE"] = 0] = "LEAGUE";
|
|
8
|
+
})(Stage || (Stage = {}));
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-namespace
|
|
10
|
+
(function (Stage) {
|
|
11
|
+
const STAGES = [Stage.ROUND_OF_8, Stage.QUARTERFINALS, Stage.SEMIFINALS, Stage.FINAL, Stage.LEAGUE];
|
|
12
|
+
function getStages() {
|
|
13
|
+
return [...STAGES];
|
|
14
|
+
}
|
|
15
|
+
Stage.getStages = getStages;
|
|
16
|
+
function getNextStage(stage) {
|
|
17
|
+
if (stage < 1)
|
|
18
|
+
throw new Error(`INVALID_STAGE ${stage}`);
|
|
19
|
+
if (stage === 1)
|
|
20
|
+
throw new Error('ALREADY_IN_FINAL_STAGE');
|
|
21
|
+
return stage / 2;
|
|
22
|
+
}
|
|
23
|
+
Stage.getNextStage = getNextStage;
|
|
24
|
+
})(Stage || (Stage = {}));
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Match } from '../match';
|
|
2
|
+
import { Team } from '../team';
|
|
3
|
+
interface StandingOpts {
|
|
4
|
+
readonly team: Team;
|
|
5
|
+
}
|
|
6
|
+
export declare class Standing {
|
|
7
|
+
readonly team: Team;
|
|
8
|
+
won30: number;
|
|
9
|
+
won31: number;
|
|
10
|
+
won32: number;
|
|
11
|
+
lost03: number;
|
|
12
|
+
lost13: number;
|
|
13
|
+
lost23: number;
|
|
14
|
+
pointsWon: number;
|
|
15
|
+
pointsLost: number;
|
|
16
|
+
points: number;
|
|
17
|
+
pointsRatio: number;
|
|
18
|
+
setsWon: number;
|
|
19
|
+
setsLost: number;
|
|
20
|
+
setsRatio: number;
|
|
21
|
+
matchesWon: number;
|
|
22
|
+
matchesLost: number;
|
|
23
|
+
totalMatches: number;
|
|
24
|
+
constructor({ team }: StandingOpts);
|
|
25
|
+
static sortFn(standingA: Standing, standingB: Standing): number;
|
|
26
|
+
calculateStanding(matches: Match[]): void;
|
|
27
|
+
}
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { MatchTeam } from '../match';
|
|
2
|
+
export class Standing {
|
|
3
|
+
constructor({ team }) {
|
|
4
|
+
this.won30 = 0;
|
|
5
|
+
this.won31 = 0;
|
|
6
|
+
this.won32 = 0;
|
|
7
|
+
this.lost03 = 0;
|
|
8
|
+
this.lost13 = 0;
|
|
9
|
+
this.lost23 = 0;
|
|
10
|
+
this.pointsWon = 0;
|
|
11
|
+
this.pointsLost = 0;
|
|
12
|
+
this.points = 0;
|
|
13
|
+
this.pointsRatio = 0;
|
|
14
|
+
this.setsWon = 0;
|
|
15
|
+
this.setsLost = 0;
|
|
16
|
+
this.setsRatio = 0;
|
|
17
|
+
this.matchesWon = 0;
|
|
18
|
+
this.matchesLost = 0;
|
|
19
|
+
this.totalMatches = 0;
|
|
20
|
+
this.team = team;
|
|
21
|
+
}
|
|
22
|
+
static sortFn(standingA, standingB) {
|
|
23
|
+
if (standingB.points > standingA.points)
|
|
24
|
+
return 1;
|
|
25
|
+
else if (standingA.points > standingB.points)
|
|
26
|
+
return -1;
|
|
27
|
+
else if (standingB.setsRatio > standingA.setsRatio)
|
|
28
|
+
return 1;
|
|
29
|
+
else if (standingA.setsRatio > standingB.setsRatio)
|
|
30
|
+
return -1;
|
|
31
|
+
else if (standingB.pointsRatio > standingA.pointsRatio)
|
|
32
|
+
return 1;
|
|
33
|
+
else if (standingA.pointsRatio > standingB.pointsRatio)
|
|
34
|
+
return -1;
|
|
35
|
+
else
|
|
36
|
+
return 0;
|
|
37
|
+
}
|
|
38
|
+
calculateStanding(matches) {
|
|
39
|
+
matches = matches.filter(match => match.homeTeam.id === this.team.id || match.awayTeam.id === this.team.id)
|
|
40
|
+
.filter(match => match.isOver());
|
|
41
|
+
let teamSide;
|
|
42
|
+
let otherSide;
|
|
43
|
+
let teamScore;
|
|
44
|
+
let otherScore;
|
|
45
|
+
for (const match of matches) {
|
|
46
|
+
if (this.team.id === match.homeTeam.id) {
|
|
47
|
+
teamSide = MatchTeam.HOME;
|
|
48
|
+
otherSide = MatchTeam.AWAY;
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
teamSide = MatchTeam.AWAY;
|
|
52
|
+
otherSide = MatchTeam.HOME;
|
|
53
|
+
}
|
|
54
|
+
if (match.getWinner().id === this.team.id) {
|
|
55
|
+
this[`won3${match.getTeamSets(otherSide)}`]++;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this[`lost${match.getTeamSets(teamSide)}3`]++;
|
|
59
|
+
}
|
|
60
|
+
teamScore = `${teamSide === MatchTeam.HOME ? 'home' : 'away'}Score`;
|
|
61
|
+
otherScore = `${otherSide === MatchTeam.HOME ? 'home' : 'away'}Score`;
|
|
62
|
+
for (const set of match.sets) {
|
|
63
|
+
this.pointsWon += set[teamScore];
|
|
64
|
+
this.pointsLost += set[otherScore];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
this.points = (this.won30 + this.won31) * 3 + this.won32 * 2 + this.lost23;
|
|
68
|
+
this.pointsRatio = this.pointsWon / this.pointsLost;
|
|
69
|
+
this.setsWon = (this.won32 + this.won31 + this.won30) * 3 + this.lost23 * 2 + this.lost13;
|
|
70
|
+
this.setsLost = (this.lost03 + this.lost13 + this.lost23) * 3 + this.won32 * 2 + this.won31;
|
|
71
|
+
this.setsRatio = this.setsWon / this.setsLost;
|
|
72
|
+
this.matchesWon = this.won32 + this.won31 + this.won30;
|
|
73
|
+
this.matchesLost = this.lost03 + this.lost13 + this.lost23;
|
|
74
|
+
this.totalMatches = this.matchesWon + this.matchesLost;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Match } from '../match';
|
|
2
|
+
import { Stage } from './stage';
|
|
3
|
+
interface TournamentStageOpts {
|
|
4
|
+
readonly stage: Stage;
|
|
5
|
+
readonly match: Match;
|
|
6
|
+
readonly index: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class TournamentMatch {
|
|
9
|
+
readonly stage: Stage;
|
|
10
|
+
readonly match: Match;
|
|
11
|
+
readonly index: number;
|
|
12
|
+
constructor({ stage, match, index }: TournamentStageOpts);
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { TournamentMatch } from './tournament-match';
|
|
2
|
+
import { Team } from '../team';
|
|
3
|
+
import { Iteration } from './iteration';
|
|
4
|
+
import { StatusEnum } from '../../data';
|
|
5
|
+
interface TournamentOpts {
|
|
6
|
+
readonly id: string;
|
|
7
|
+
readonly iteration: Iteration;
|
|
8
|
+
readonly matches: TournamentMatch[];
|
|
9
|
+
readonly teams: Team[];
|
|
10
|
+
readonly champion?: Team;
|
|
11
|
+
readonly status: StatusEnum;
|
|
12
|
+
}
|
|
13
|
+
export declare class Tournament {
|
|
14
|
+
readonly id: string;
|
|
15
|
+
readonly iteration: Iteration;
|
|
16
|
+
readonly matches: TournamentMatch[];
|
|
17
|
+
readonly teams: Team[];
|
|
18
|
+
readonly status: StatusEnum;
|
|
19
|
+
champion?: Team;
|
|
20
|
+
constructor({ id, iteration, matches, teams, champion, status }: TournamentOpts);
|
|
21
|
+
static sortMatchesFn(m1: TournamentMatch, m2: TournamentMatch): number;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export class Tournament {
|
|
2
|
+
constructor({ id, iteration, matches, teams, champion, status }) {
|
|
3
|
+
this.id = id;
|
|
4
|
+
this.iteration = iteration;
|
|
5
|
+
this.matches = matches;
|
|
6
|
+
this.teams = teams;
|
|
7
|
+
this.champion = champion;
|
|
8
|
+
this.status = status;
|
|
9
|
+
this.matches.sort(Tournament.sortMatchesFn);
|
|
10
|
+
}
|
|
11
|
+
static sortMatchesFn(m1, m2) {
|
|
12
|
+
if (m1.stage > m2.stage)
|
|
13
|
+
return -1;
|
|
14
|
+
else if (m1.stage < m2.stage)
|
|
15
|
+
return 1;
|
|
16
|
+
else
|
|
17
|
+
return m1.index - m2.index;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface CountryOpts {
|
|
2
|
+
readonly id: string;
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly short: string;
|
|
5
|
+
readonly language?: string;
|
|
6
|
+
readonly league?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare class Country {
|
|
9
|
+
readonly id: string;
|
|
10
|
+
readonly name: string;
|
|
11
|
+
readonly short: string;
|
|
12
|
+
readonly language?: string;
|
|
13
|
+
readonly league?: string;
|
|
14
|
+
constructor({ id, name, short, language, league }: CountryOpts);
|
|
15
|
+
toString(): string;
|
|
16
|
+
}
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export class Country {
|
|
2
|
+
constructor({ id, name, short, language, league }) {
|
|
3
|
+
this.id = id;
|
|
4
|
+
this.name = name;
|
|
5
|
+
this.short = short;
|
|
6
|
+
this.language = language;
|
|
7
|
+
this.league = league;
|
|
8
|
+
}
|
|
9
|
+
toString() {
|
|
10
|
+
return JSON.stringify({
|
|
11
|
+
id: this.id,
|
|
12
|
+
name: this.name,
|
|
13
|
+
short: this.short,
|
|
14
|
+
language: this.language,
|
|
15
|
+
league: this.league
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './country';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './country';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Team } from '../team';
|
|
2
|
+
import { Player } from '../player';
|
|
3
|
+
interface DraftPickOpts {
|
|
4
|
+
readonly team: Team;
|
|
5
|
+
readonly pick: Player;
|
|
6
|
+
readonly priority: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class DraftPick {
|
|
9
|
+
readonly team: Team;
|
|
10
|
+
readonly pick: Player;
|
|
11
|
+
readonly priority: number;
|
|
12
|
+
constructor({ team, pick, priority }: DraftPickOpts);
|
|
13
|
+
}
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { DraftPick } from './draft-pick';
|
|
2
|
+
interface DraftParams {
|
|
3
|
+
readonly id: string;
|
|
4
|
+
readonly start: Date;
|
|
5
|
+
readonly end: Date;
|
|
6
|
+
readonly picks: DraftPick[];
|
|
7
|
+
}
|
|
8
|
+
export declare class Draft {
|
|
9
|
+
readonly id: string;
|
|
10
|
+
readonly start: Date;
|
|
11
|
+
readonly end: Date;
|
|
12
|
+
readonly picks: DraftPick[];
|
|
13
|
+
constructor({ id, start, end, picks }: DraftParams);
|
|
14
|
+
}
|
|
15
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './rally-event';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './rally-event';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EventTypeEnum } from '../../data';
|
|
2
|
+
export interface RallyEventOpts {
|
|
3
|
+
readonly player: string;
|
|
4
|
+
readonly eventType: EventTypeEnum;
|
|
5
|
+
}
|
|
6
|
+
export declare abstract class RallyEvent {
|
|
7
|
+
readonly player: string;
|
|
8
|
+
readonly eventType: EventTypeEnum;
|
|
9
|
+
protected constructor({ eventType, player }: RallyEventOpts);
|
|
10
|
+
abstract toString(): string;
|
|
11
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export declare enum CourtRow {
|
|
2
|
+
BACK = "BACK_ROW",
|
|
3
|
+
FRONT = "FRONT_ROW"
|
|
4
|
+
}
|
|
5
|
+
export declare enum CourtPosition {
|
|
6
|
+
NOT_IN_COURT = -1,
|
|
7
|
+
LIBERO_ZONE = 0,
|
|
8
|
+
LEFT_FRONT = 4,
|
|
9
|
+
MIDDLE_FRONT = 3,
|
|
10
|
+
RIGHT_FRONT = 2,
|
|
11
|
+
LEFT_BACK = 5,
|
|
12
|
+
MIDDLE_BACK = 6,
|
|
13
|
+
RIGHT_BACK = 1
|
|
14
|
+
}
|
|
15
|
+
export declare enum CourtTarget {
|
|
16
|
+
NO_TARGET = 0,
|
|
17
|
+
OPPONENT_RIGHT_BACK = 7,
|
|
18
|
+
OPPONENT_MIDDLE_BACK = 12,
|
|
19
|
+
OPPONENT_LEFT_BACK = 11,
|
|
20
|
+
OPPONENT_RIGHT_FRONT = 8,
|
|
21
|
+
OPPONENT_MIDDLE_FRONT = 9,
|
|
22
|
+
OPPONENT_LEFT_FRONT = 10,
|
|
23
|
+
TEAM_LEFT_FRONT = 4,
|
|
24
|
+
TEAM_MIDDLE_FRONT = 3,
|
|
25
|
+
TEAM_RIGHT_FRONT = 2,
|
|
26
|
+
TEAM_LEFT_BACK = 5,
|
|
27
|
+
TEAM_MIDDLE_BACK = 6,
|
|
28
|
+
TEAM_RIGHT_BACK = 1
|
|
29
|
+
}
|
|
30
|
+
export declare function getPositions(): CourtPosition[];
|
|
31
|
+
export declare function rotatePosition(position: number): CourtPosition;
|
|
32
|
+
export declare function isFrontRow(position: number): boolean;
|
|
33
|
+
export declare function isBackRow(position: number): boolean;
|
|
34
|
+
export declare function getCourtRow(row: CourtRow): CourtPosition[];
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export var CourtRow;
|
|
2
|
+
(function (CourtRow) {
|
|
3
|
+
CourtRow["BACK"] = "BACK_ROW";
|
|
4
|
+
CourtRow["FRONT"] = "FRONT_ROW";
|
|
5
|
+
})(CourtRow || (CourtRow = {}));
|
|
6
|
+
export var CourtPosition;
|
|
7
|
+
(function (CourtPosition) {
|
|
8
|
+
CourtPosition[CourtPosition["NOT_IN_COURT"] = -1] = "NOT_IN_COURT";
|
|
9
|
+
CourtPosition[CourtPosition["LIBERO_ZONE"] = 0] = "LIBERO_ZONE";
|
|
10
|
+
// -----------------------------------------------------
|
|
11
|
+
CourtPosition[CourtPosition["LEFT_FRONT"] = 4] = "LEFT_FRONT";
|
|
12
|
+
CourtPosition[CourtPosition["MIDDLE_FRONT"] = 3] = "MIDDLE_FRONT";
|
|
13
|
+
CourtPosition[CourtPosition["RIGHT_FRONT"] = 2] = "RIGHT_FRONT";
|
|
14
|
+
CourtPosition[CourtPosition["LEFT_BACK"] = 5] = "LEFT_BACK";
|
|
15
|
+
CourtPosition[CourtPosition["MIDDLE_BACK"] = 6] = "MIDDLE_BACK";
|
|
16
|
+
CourtPosition[CourtPosition["RIGHT_BACK"] = 1] = "RIGHT_BACK";
|
|
17
|
+
})(CourtPosition || (CourtPosition = {}));
|
|
18
|
+
export var CourtTarget;
|
|
19
|
+
(function (CourtTarget) {
|
|
20
|
+
CourtTarget[CourtTarget["NO_TARGET"] = 0] = "NO_TARGET";
|
|
21
|
+
CourtTarget[CourtTarget["OPPONENT_RIGHT_BACK"] = 7] = "OPPONENT_RIGHT_BACK";
|
|
22
|
+
CourtTarget[CourtTarget["OPPONENT_MIDDLE_BACK"] = 12] = "OPPONENT_MIDDLE_BACK";
|
|
23
|
+
CourtTarget[CourtTarget["OPPONENT_LEFT_BACK"] = 11] = "OPPONENT_LEFT_BACK";
|
|
24
|
+
CourtTarget[CourtTarget["OPPONENT_RIGHT_FRONT"] = 8] = "OPPONENT_RIGHT_FRONT";
|
|
25
|
+
CourtTarget[CourtTarget["OPPONENT_MIDDLE_FRONT"] = 9] = "OPPONENT_MIDDLE_FRONT";
|
|
26
|
+
CourtTarget[CourtTarget["OPPONENT_LEFT_FRONT"] = 10] = "OPPONENT_LEFT_FRONT";
|
|
27
|
+
// --------------------------------------------------------------------------------
|
|
28
|
+
CourtTarget[CourtTarget["TEAM_LEFT_FRONT"] = 4] = "TEAM_LEFT_FRONT";
|
|
29
|
+
CourtTarget[CourtTarget["TEAM_MIDDLE_FRONT"] = 3] = "TEAM_MIDDLE_FRONT";
|
|
30
|
+
CourtTarget[CourtTarget["TEAM_RIGHT_FRONT"] = 2] = "TEAM_RIGHT_FRONT";
|
|
31
|
+
CourtTarget[CourtTarget["TEAM_LEFT_BACK"] = 5] = "TEAM_LEFT_BACK";
|
|
32
|
+
CourtTarget[CourtTarget["TEAM_MIDDLE_BACK"] = 6] = "TEAM_MIDDLE_BACK";
|
|
33
|
+
CourtTarget[CourtTarget["TEAM_RIGHT_BACK"] = 1] = "TEAM_RIGHT_BACK";
|
|
34
|
+
})(CourtTarget || (CourtTarget = {}));
|
|
35
|
+
const FRONT_ROW = [CourtPosition.LEFT_FRONT, CourtPosition.MIDDLE_FRONT, CourtPosition.RIGHT_FRONT];
|
|
36
|
+
const BACK_ROW = [CourtPosition.LEFT_BACK, CourtPosition.MIDDLE_BACK, CourtPosition.RIGHT_BACK];
|
|
37
|
+
export function getPositions() {
|
|
38
|
+
return [...BACK_ROW, ...FRONT_ROW];
|
|
39
|
+
}
|
|
40
|
+
export function rotatePosition(position) {
|
|
41
|
+
if (position < 1 || position > 6)
|
|
42
|
+
throw new Error('POSITION_INDEX_OUT_OF_BOUNDS');
|
|
43
|
+
if (position > CourtPosition.RIGHT_BACK)
|
|
44
|
+
return position - 1;
|
|
45
|
+
else
|
|
46
|
+
return CourtPosition.MIDDLE_BACK;
|
|
47
|
+
}
|
|
48
|
+
export function isFrontRow(position) {
|
|
49
|
+
if (position < 1 || position > 6)
|
|
50
|
+
throw new Error('POSITION_INDEX_OUT_OF_BOUNDS');
|
|
51
|
+
return FRONT_ROW.includes(position);
|
|
52
|
+
}
|
|
53
|
+
export function isBackRow(position) {
|
|
54
|
+
if (position < 1 || position > 6)
|
|
55
|
+
throw new Error(`POSITION_INDEX_OUT_OF_BOUNDS: ${position}`);
|
|
56
|
+
return BACK_ROW.includes(position);
|
|
57
|
+
}
|
|
58
|
+
export function getCourtRow(row) {
|
|
59
|
+
if (![CourtRow.BACK, CourtRow.FRONT].includes(row))
|
|
60
|
+
throw new Error(`INVALID_ROW: ${row}`);
|
|
61
|
+
return CourtRow.BACK === row ? [...BACK_ROW] : [...FRONT_ROW];
|
|
62
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { Match, MatchTeam } from '.';
|
|
2
|
+
import { CompetitionType } from '../../data';
|
|
3
|
+
interface MatchRatingParams {
|
|
4
|
+
readonly match: Match;
|
|
5
|
+
readonly competitionType: CompetitionType;
|
|
6
|
+
}
|
|
7
|
+
interface SetScoreVariant {
|
|
8
|
+
'3-0': number;
|
|
9
|
+
'3-1': number;
|
|
10
|
+
'3-2': number;
|
|
11
|
+
'2-3': number;
|
|
12
|
+
'1-3': number;
|
|
13
|
+
'0-3': number;
|
|
14
|
+
}
|
|
15
|
+
interface MatchWeightFactor {
|
|
16
|
+
TOURNAMENT: number;
|
|
17
|
+
LEAGUE: number;
|
|
18
|
+
}
|
|
19
|
+
export declare class MatchRating {
|
|
20
|
+
static K: number;
|
|
21
|
+
static SSV: SetScoreVariant;
|
|
22
|
+
static C1: number;
|
|
23
|
+
static C2: number;
|
|
24
|
+
static C3: number;
|
|
25
|
+
static C4: number;
|
|
26
|
+
static C5: number;
|
|
27
|
+
static MWF: MatchWeightFactor;
|
|
28
|
+
readonly match: Match;
|
|
29
|
+
readonly weight: number;
|
|
30
|
+
constructor({ match, competitionType }: MatchRatingParams);
|
|
31
|
+
getPoints(team: MatchTeam): number;
|
|
32
|
+
static calculateProbability(z: number): number;
|
|
33
|
+
getExpectedResult(): number;
|
|
34
|
+
}
|
|
35
|
+
export {};
|