volleyballsimtypes 0.0.132 → 0.0.134
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/transformers/coach.d.ts +1 -3
- package/dist/cjs/src/data/transformers/coach.js +2 -13
- package/dist/cjs/src/data/transformers/draft.js +1 -3
- package/dist/cjs/src/data/transformers/index.d.ts +0 -7
- package/dist/cjs/src/data/transformers/index.js +0 -7
- package/dist/cjs/src/data/transformers/league.d.ts +1 -3
- package/dist/cjs/src/data/transformers/league.js +1 -9
- package/dist/cjs/src/data/transformers/match-set-stats.d.ts +1 -3
- package/dist/cjs/src/data/transformers/match-set-stats.js +1 -35
- package/dist/cjs/src/data/transformers/match-set.d.ts +1 -3
- package/dist/cjs/src/data/transformers/match-set.js +5 -34
- package/dist/cjs/src/data/transformers/match.d.ts +2 -4
- package/dist/cjs/src/data/transformers/match.js +6 -21
- package/dist/cjs/src/data/transformers/player.d.ts +1 -4
- package/dist/cjs/src/data/transformers/player.js +1 -68
- package/dist/cjs/src/data/transformers/rally.d.ts +1 -3
- package/dist/cjs/src/data/transformers/rally.js +3 -42
- package/dist/cjs/src/data/transformers/role.d.ts +1 -3
- package/dist/cjs/src/data/transformers/role.js +1 -6
- package/dist/cjs/src/data/transformers/season.d.ts +1 -3
- package/dist/cjs/src/data/transformers/season.js +1 -43
- package/dist/cjs/src/data/transformers/team.d.ts +1 -3
- package/dist/cjs/src/data/transformers/team.js +1 -13
- package/dist/cjs/src/data/transformers/tournament-match.d.ts +1 -3
- package/dist/cjs/src/data/transformers/tournament-match.js +1 -9
- package/dist/cjs/src/data/transformers/tournament.d.ts +1 -3
- package/dist/cjs/src/data/transformers/tournament.js +1 -11
- package/dist/cjs/src/data/transformers/trait.d.ts +1 -3
- package/dist/cjs/src/data/transformers/trait.js +1 -23
- package/dist/cjs/src/index.d.ts +0 -1
- package/dist/cjs/src/index.js +0 -1
- package/dist/cjs/src/service/country/country.d.ts +1 -0
- package/dist/cjs/src/service/country/country.js +9 -0
- package/dist/cjs/src/service/match/match-rating.d.ts +2 -2
- package/dist/cjs/src/service/match/match-set.d.ts +12 -8
- package/dist/cjs/src/service/match/match-set.js +8 -8
- package/dist/cjs/src/service/match/match.d.ts +3 -3
- package/dist/cjs/src/service/match/rally.d.ts +3 -3
- package/dist/cjs/src/service/player/performance-stats.d.ts +4 -3
- package/dist/cjs/src/service/player/performance-stats.js +15 -0
- package/dist/cjs/src/service/player/player.d.ts +20 -9
- package/dist/cjs/src/service/player/player.js +32 -1
- package/dist/cjs/src/service/player/role.d.ts +3 -1
- package/dist/cjs/src/service/player/role.js +9 -6
- package/dist/cjs/src/service/player/stats.d.ts +4 -4
- package/dist/cjs/src/service/player/stats.js +4 -4
- package/dist/cjs/src/service/player/trait.d.ts +1 -0
- package/dist/cjs/src/service/player/trait.js +10 -0
- package/dist/cjs/src/service/team/team.d.ts +3 -3
- package/dist/esm/src/data/transformers/coach.d.ts +1 -3
- package/dist/esm/src/data/transformers/coach.js +2 -12
- package/dist/esm/src/data/transformers/draft.js +1 -3
- package/dist/esm/src/data/transformers/index.d.ts +0 -7
- package/dist/esm/src/data/transformers/index.js +0 -7
- package/dist/esm/src/data/transformers/league.d.ts +1 -3
- package/dist/esm/src/data/transformers/league.js +1 -8
- package/dist/esm/src/data/transformers/match-set-stats.d.ts +1 -3
- package/dist/esm/src/data/transformers/match-set-stats.js +1 -34
- package/dist/esm/src/data/transformers/match-set.d.ts +1 -3
- package/dist/esm/src/data/transformers/match-set.js +8 -36
- package/dist/esm/src/data/transformers/match.d.ts +2 -4
- package/dist/esm/src/data/transformers/match.js +3 -17
- package/dist/esm/src/data/transformers/player.d.ts +1 -4
- package/dist/esm/src/data/transformers/player.js +3 -68
- package/dist/esm/src/data/transformers/rally.d.ts +1 -3
- package/dist/esm/src/data/transformers/rally.js +2 -40
- package/dist/esm/src/data/transformers/role.d.ts +1 -3
- package/dist/esm/src/data/transformers/role.js +1 -5
- package/dist/esm/src/data/transformers/season.d.ts +1 -3
- package/dist/esm/src/data/transformers/season.js +2 -43
- package/dist/esm/src/data/transformers/team.d.ts +1 -3
- package/dist/esm/src/data/transformers/team.js +2 -13
- package/dist/esm/src/data/transformers/tournament-match.d.ts +1 -3
- package/dist/esm/src/data/transformers/tournament-match.js +2 -9
- package/dist/esm/src/data/transformers/tournament.d.ts +1 -3
- package/dist/esm/src/data/transformers/tournament.js +2 -11
- package/dist/esm/src/data/transformers/trait.d.ts +1 -3
- package/dist/esm/src/data/transformers/trait.js +1 -22
- package/dist/esm/src/index.d.ts +0 -1
- package/dist/esm/src/index.js +0 -1
- package/dist/esm/src/service/country/country.d.ts +1 -0
- package/dist/esm/src/service/country/country.js +9 -0
- package/dist/esm/src/service/match/match-rating.d.ts +2 -2
- package/dist/esm/src/service/match/match-set.d.ts +12 -8
- package/dist/esm/src/service/match/match-set.js +8 -8
- package/dist/esm/src/service/match/match.d.ts +3 -3
- package/dist/esm/src/service/match/rally.d.ts +3 -3
- package/dist/esm/src/service/player/performance-stats.d.ts +4 -3
- package/dist/esm/src/service/player/performance-stats.js +15 -0
- package/dist/esm/src/service/player/player.d.ts +20 -9
- package/dist/esm/src/service/player/player.js +29 -0
- package/dist/esm/src/service/player/role.d.ts +3 -1
- package/dist/esm/src/service/player/role.js +9 -6
- package/dist/esm/src/service/player/stats.d.ts +4 -4
- package/dist/esm/src/service/player/stats.js +4 -4
- package/dist/esm/src/service/player/trait.d.ts +1 -0
- package/dist/esm/src/service/player/trait.js +10 -0
- package/dist/esm/src/service/team/team.d.ts +3 -3
- package/package.json +3 -2
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { CompetitionAttributes, CompetitionModel } from '../models';
|
|
2
2
|
import { Tournament } from '../../service';
|
|
3
|
-
import { APITournament } from '../../api';
|
|
4
3
|
declare function transformToAttributes(tournament: Tournament): CompetitionAttributes;
|
|
5
4
|
declare function transformToObject(model: CompetitionModel): Tournament;
|
|
6
|
-
|
|
7
|
-
export { transformToObject as transformToTournament, transformToAPIObject as transformToAPITournament, transformToAttributes as transformFromTournament };
|
|
5
|
+
export { transformToObject as transformToTournament, transformToAttributes as transformFromTournament };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformFromTournament = exports.
|
|
3
|
+
exports.transformFromTournament = exports.transformToTournament = void 0;
|
|
4
4
|
const _1 = require(".");
|
|
5
5
|
const service_1 = require("../../service");
|
|
6
6
|
function transformToAttributes(tournament) {
|
|
@@ -35,13 +35,3 @@ function transformToObject(model) {
|
|
|
35
35
|
});
|
|
36
36
|
}
|
|
37
37
|
exports.transformToTournament = transformToObject;
|
|
38
|
-
function transformToAPIObject(model) {
|
|
39
|
-
return {
|
|
40
|
-
id: model.competition_id,
|
|
41
|
-
iteration: model.iteration,
|
|
42
|
-
champion: model.CompetitionChampion != null ? (0, _1.transformToAPITeam)(model.CompetitionChampion.team) : undefined,
|
|
43
|
-
matches: model.CompetitionMatches != null ? model.CompetitionMatches.map(_1.transformToAPITournamentMatch) : [],
|
|
44
|
-
teams: model.Teams != null ? model.Teams.map(_1.transformToAPITeam) : []
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
exports.transformToAPITournament = transformToAPIObject;
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { Trait } from '../../service';
|
|
2
2
|
import { TraitAttributes, TraitModel } from '../models';
|
|
3
|
-
import { APITrait } from '../../api';
|
|
4
3
|
declare function transformToAttributes(trait: Trait): TraitAttributes;
|
|
5
|
-
declare function transformToAPIObject(model: TraitModel): APITrait;
|
|
6
4
|
declare function transformToObject(model: TraitModel): Trait;
|
|
7
|
-
export { transformToObject as transformToTrait,
|
|
5
|
+
export { transformToObject as transformToTrait, transformToAttributes as transformFromTrait };
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformFromTrait = exports.
|
|
3
|
+
exports.transformFromTrait = exports.transformToTrait = void 0;
|
|
4
4
|
const service_1 = require("../../service");
|
|
5
|
-
const api_1 = require("../../api");
|
|
6
5
|
function transformToAttributes(trait) {
|
|
7
6
|
return {
|
|
8
7
|
trait_id: trait.id,
|
|
@@ -10,27 +9,6 @@ function transformToAttributes(trait) {
|
|
|
10
9
|
};
|
|
11
10
|
}
|
|
12
11
|
exports.transformFromTrait = transformToAttributes;
|
|
13
|
-
function transformToAPIObject(model) {
|
|
14
|
-
switch (model.name) {
|
|
15
|
-
case 'Master Mind':
|
|
16
|
-
return api_1.APITrait.MASTER_MIND;
|
|
17
|
-
case 'Moving Wall':
|
|
18
|
-
return api_1.APITrait.MOVING_WALL;
|
|
19
|
-
case 'Marksman':
|
|
20
|
-
return api_1.APITrait.MARKSMAN;
|
|
21
|
-
case 'Meteor Serve':
|
|
22
|
-
return api_1.APITrait.METEOR_SERVE;
|
|
23
|
-
case 'Squad Leader':
|
|
24
|
-
return api_1.APITrait.SQUAD_LEADER;
|
|
25
|
-
case 'Vigorous':
|
|
26
|
-
return api_1.APITrait.VIGOROUS;
|
|
27
|
-
case 'Guardian':
|
|
28
|
-
return api_1.APITrait.GUARDIAN;
|
|
29
|
-
default:
|
|
30
|
-
throw new Error('TRAIT_ERROR');
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
exports.transformToAPITrait = transformToAPIObject;
|
|
34
12
|
function transformToObject(model) {
|
|
35
13
|
const trait = service_1.Trait.getTraits().find(trait => trait.id === model.trait_id);
|
|
36
14
|
if (trait == null) {
|
package/dist/cjs/src/index.d.ts
CHANGED
package/dist/cjs/src/index.js
CHANGED
|
@@ -15,5 +15,4 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./service"), exports);
|
|
18
|
-
__exportStar(require("./api"), exports);
|
|
19
18
|
__exportStar(require("./data"), exports);
|
|
@@ -9,5 +9,14 @@ class Country {
|
|
|
9
9
|
this.language = language;
|
|
10
10
|
this.league = league;
|
|
11
11
|
}
|
|
12
|
+
toString() {
|
|
13
|
+
return JSON.stringify({
|
|
14
|
+
id: this.id,
|
|
15
|
+
name: this.name,
|
|
16
|
+
short: this.short,
|
|
17
|
+
language: this.language,
|
|
18
|
+
league: this.league
|
|
19
|
+
});
|
|
20
|
+
}
|
|
12
21
|
}
|
|
13
22
|
exports.Country = Country;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Match, MatchTeam } from '.';
|
|
2
2
|
import { CompetitionType } from '../../data';
|
|
3
|
-
interface
|
|
3
|
+
interface MatchRatingParams {
|
|
4
4
|
readonly match: Match;
|
|
5
5
|
readonly competitionType: CompetitionType;
|
|
6
6
|
}
|
|
@@ -27,7 +27,7 @@ export declare class MatchRating {
|
|
|
27
27
|
static MWF: MatchWeightFactor;
|
|
28
28
|
readonly match: Match;
|
|
29
29
|
readonly weight: number;
|
|
30
|
-
constructor({ match, competitionType }:
|
|
30
|
+
constructor({ match, competitionType }: MatchRatingParams);
|
|
31
31
|
getPoints(team: MatchTeam): number;
|
|
32
32
|
static calculateProbability(z: number): number;
|
|
33
33
|
getExpectedResult(): number;
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { PlayerPosition, Rally } from './rally';
|
|
2
2
|
import { MatchTeam } from './match-team';
|
|
3
3
|
import { Player } from '../player';
|
|
4
|
-
|
|
4
|
+
declare enum ScoreThreshold {
|
|
5
|
+
SET = 25,
|
|
6
|
+
TIE_BREAK = 15
|
|
7
|
+
}
|
|
8
|
+
interface MatchSetParams {
|
|
5
9
|
readonly id: string;
|
|
6
10
|
readonly order: number;
|
|
7
11
|
readonly isTieBreak: boolean;
|
|
@@ -31,7 +35,7 @@ export interface SetStatistics {
|
|
|
31
35
|
killBlocks: number;
|
|
32
36
|
assists: number;
|
|
33
37
|
}
|
|
34
|
-
export declare class MatchSet {
|
|
38
|
+
export declare class MatchSet implements MatchSetParams {
|
|
35
39
|
readonly id: string;
|
|
36
40
|
readonly order: number;
|
|
37
41
|
readonly isTieBreak: boolean;
|
|
@@ -39,12 +43,12 @@ export declare class MatchSet {
|
|
|
39
43
|
readonly awayPlayerPosition: PlayerPosition[];
|
|
40
44
|
readonly stats: SetStatistics[];
|
|
41
45
|
readonly rallies: Rally[];
|
|
42
|
-
|
|
43
|
-
private
|
|
44
|
-
private
|
|
45
|
-
constructor({ id, order, isTieBreak, homePlayerPosition, awayPlayerPosition, stats, rallies, homeScore, awayScore }:
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
readonly scoreThreshold: ScoreThreshold;
|
|
47
|
+
private _homeScore;
|
|
48
|
+
private _awayScore;
|
|
49
|
+
constructor({ id, order, isTieBreak, homePlayerPosition, awayPlayerPosition, stats, rallies, homeScore, awayScore }: MatchSetParams);
|
|
50
|
+
get homeScore(): number;
|
|
51
|
+
get awayScore(): number;
|
|
48
52
|
increaseScore(team: MatchTeam): void;
|
|
49
53
|
addRally(rally: Rally): void;
|
|
50
54
|
/**
|
|
@@ -13,8 +13,8 @@ class MatchSet {
|
|
|
13
13
|
(0, utils_1.validateUUID)(id);
|
|
14
14
|
this.id = id;
|
|
15
15
|
this.order = order;
|
|
16
|
-
this.
|
|
17
|
-
this.
|
|
16
|
+
this._homeScore = homeScore;
|
|
17
|
+
this._awayScore = awayScore;
|
|
18
18
|
this.homePlayerPosition = homePlayerPosition;
|
|
19
19
|
this.awayPlayerPosition = awayPlayerPosition;
|
|
20
20
|
this.stats = stats;
|
|
@@ -22,17 +22,17 @@ class MatchSet {
|
|
|
22
22
|
this.isTieBreak = isTieBreak;
|
|
23
23
|
this.scoreThreshold = isTieBreak ? ScoreThreshold.TIE_BREAK : ScoreThreshold.SET;
|
|
24
24
|
}
|
|
25
|
-
|
|
26
|
-
return this.
|
|
25
|
+
get homeScore() {
|
|
26
|
+
return this._homeScore;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
return this.
|
|
28
|
+
get awayScore() {
|
|
29
|
+
return this._awayScore;
|
|
30
30
|
}
|
|
31
31
|
increaseScore(team) {
|
|
32
32
|
if (team === match_team_1.MatchTeam.HOME)
|
|
33
|
-
this.
|
|
33
|
+
this._homeScore++;
|
|
34
34
|
else if (team === match_team_1.MatchTeam.AWAY)
|
|
35
|
-
this.
|
|
35
|
+
this._awayScore++;
|
|
36
36
|
else
|
|
37
37
|
throw new Error('UNKNOWN_TEAM');
|
|
38
38
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MatchSet } from './match-set';
|
|
2
2
|
import { Team } from '../team';
|
|
3
3
|
import { MatchTeam } from './match-team';
|
|
4
|
-
interface
|
|
4
|
+
interface MatchParams {
|
|
5
5
|
readonly id: string;
|
|
6
6
|
readonly homeTeam: Team;
|
|
7
7
|
readonly awayTeam: Team;
|
|
@@ -17,7 +17,7 @@ export declare enum MatchScore {
|
|
|
17
17
|
'1-3' = "1-3",
|
|
18
18
|
'0-3' = "0-3"
|
|
19
19
|
}
|
|
20
|
-
export declare class Match {
|
|
20
|
+
export declare class Match implements MatchParams {
|
|
21
21
|
static readonly BEST_OF = 5;
|
|
22
22
|
readonly id: string;
|
|
23
23
|
readonly homeTeam: Team;
|
|
@@ -25,7 +25,7 @@ export declare class Match {
|
|
|
25
25
|
readonly sets: MatchSet[];
|
|
26
26
|
readonly scheduledDate: Date;
|
|
27
27
|
isSimulated: boolean;
|
|
28
|
-
constructor({ id, homeTeam, awayTeam, scheduledDate, sets, isSimulated }:
|
|
28
|
+
constructor({ id, homeTeam, awayTeam, scheduledDate, sets, isSimulated }: MatchParams);
|
|
29
29
|
addSet(set: MatchSet): void;
|
|
30
30
|
getTeamSets(team: MatchTeam): number;
|
|
31
31
|
getScore(): MatchScore;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Team } from '../team';
|
|
2
2
|
import { CourtPosition } from './court-position';
|
|
3
3
|
import { RallyEvent } from '../event';
|
|
4
|
-
interface
|
|
4
|
+
interface RallyParams {
|
|
5
5
|
readonly id: string;
|
|
6
6
|
readonly order: number;
|
|
7
7
|
readonly servingTeam: Team;
|
|
@@ -11,12 +11,12 @@ export interface PlayerPosition {
|
|
|
11
11
|
position: CourtPosition;
|
|
12
12
|
playerId: string;
|
|
13
13
|
}
|
|
14
|
-
export declare class Rally {
|
|
14
|
+
export declare class Rally implements RallyParams {
|
|
15
15
|
readonly id: string;
|
|
16
16
|
readonly servingTeam: Team;
|
|
17
17
|
readonly events: RallyEvent[];
|
|
18
18
|
readonly order: number;
|
|
19
|
-
constructor({ id, order, servingTeam, events }:
|
|
19
|
+
constructor({ id, order, servingTeam, events }: RallyParams);
|
|
20
20
|
addEvent(event: RallyEvent): void;
|
|
21
21
|
}
|
|
22
22
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
interface
|
|
1
|
+
interface PerformanceStatsParams {
|
|
2
2
|
readonly setting: number;
|
|
3
3
|
readonly pass: number;
|
|
4
4
|
readonly reception: number;
|
|
@@ -11,7 +11,7 @@ interface PerformanceStatsOpts {
|
|
|
11
11
|
readonly defense: number;
|
|
12
12
|
readonly stamina: number;
|
|
13
13
|
}
|
|
14
|
-
export declare class PerformanceStats {
|
|
14
|
+
export declare class PerformanceStats implements PerformanceStatsParams {
|
|
15
15
|
readonly setting: number;
|
|
16
16
|
readonly pass: number;
|
|
17
17
|
readonly reception: number;
|
|
@@ -23,7 +23,8 @@ export declare class PerformanceStats {
|
|
|
23
23
|
readonly serve: number;
|
|
24
24
|
readonly defense: number;
|
|
25
25
|
readonly stamina: number;
|
|
26
|
-
constructor(opts:
|
|
26
|
+
constructor(opts: PerformanceStatsParams);
|
|
27
27
|
toString(): string;
|
|
28
|
+
static fromAverage(average: number): PerformanceStats;
|
|
28
29
|
}
|
|
29
30
|
export {};
|
|
@@ -19,5 +19,20 @@ class PerformanceStats {
|
|
|
19
19
|
toString() {
|
|
20
20
|
return (0, utils_1.getKeys)(this).map(key => `${key}: ${this[key]}`).join(', ');
|
|
21
21
|
}
|
|
22
|
+
static fromAverage(average) {
|
|
23
|
+
return new PerformanceStats({
|
|
24
|
+
setting: average,
|
|
25
|
+
pass: average,
|
|
26
|
+
reception: average,
|
|
27
|
+
spike: average,
|
|
28
|
+
backAttack: average,
|
|
29
|
+
jump: average,
|
|
30
|
+
block: average,
|
|
31
|
+
awareness: average,
|
|
32
|
+
serve: average,
|
|
33
|
+
defense: average,
|
|
34
|
+
stamina: average
|
|
35
|
+
});
|
|
36
|
+
}
|
|
22
37
|
}
|
|
23
38
|
exports.PerformanceStats = PerformanceStats;
|
|
@@ -3,11 +3,16 @@ import { Role } from './role';
|
|
|
3
3
|
import { Trait } from './trait';
|
|
4
4
|
import { Country } from '../country';
|
|
5
5
|
import { GeneralStat } from './stats';
|
|
6
|
-
export
|
|
7
|
-
name: GeneralStat;
|
|
8
|
-
value: number;
|
|
6
|
+
export declare class Stat {
|
|
7
|
+
readonly name: GeneralStat;
|
|
8
|
+
readonly value: number;
|
|
9
|
+
constructor({ name, value }: {
|
|
10
|
+
name: GeneralStat;
|
|
11
|
+
value: number;
|
|
12
|
+
});
|
|
13
|
+
toString(): string;
|
|
9
14
|
}
|
|
10
|
-
interface
|
|
15
|
+
interface PlayerParams {
|
|
11
16
|
readonly id: string;
|
|
12
17
|
readonly name: Name;
|
|
13
18
|
readonly country: Country;
|
|
@@ -15,11 +20,16 @@ interface PlayerOpts {
|
|
|
15
20
|
readonly roles: Role[];
|
|
16
21
|
readonly traits: Trait[];
|
|
17
22
|
}
|
|
18
|
-
export
|
|
19
|
-
first: string;
|
|
20
|
-
last: string;
|
|
23
|
+
export declare class Name {
|
|
24
|
+
readonly first: string;
|
|
25
|
+
readonly last: string;
|
|
26
|
+
constructor({ first, last }: {
|
|
27
|
+
first: string;
|
|
28
|
+
last: string;
|
|
29
|
+
});
|
|
30
|
+
toString(): string;
|
|
21
31
|
}
|
|
22
|
-
export declare class Player {
|
|
32
|
+
export declare class Player implements PlayerParams {
|
|
23
33
|
readonly id: string;
|
|
24
34
|
readonly name: Name;
|
|
25
35
|
readonly country: Country;
|
|
@@ -27,9 +37,10 @@ export declare class Player {
|
|
|
27
37
|
readonly roles: Role[];
|
|
28
38
|
readonly traits: Trait[];
|
|
29
39
|
readonly generalStats: Stat[];
|
|
30
|
-
constructor({ id, name, country, stats, roles, traits }:
|
|
40
|
+
constructor({ id, name, country, stats, roles, traits }: PlayerParams);
|
|
31
41
|
static sortPlayers(roles: Role[]): (p1: Player, p2: Player) => number;
|
|
32
42
|
static compareStats(p1: Player, p2: Player): number;
|
|
33
43
|
canPlayLibero(): boolean;
|
|
44
|
+
toString(): string;
|
|
34
45
|
}
|
|
35
46
|
export {};
|
|
@@ -1,9 +1,29 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Player = void 0;
|
|
3
|
+
exports.Player = exports.Name = exports.Stat = void 0;
|
|
4
4
|
const role_1 = require("./role");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const stats_1 = require("./stats");
|
|
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;
|
|
7
27
|
class Player {
|
|
8
28
|
constructor({ id, name, country, stats, roles, traits }) {
|
|
9
29
|
(0, utils_1.validateUUID)(id);
|
|
@@ -55,5 +75,16 @@ class Player {
|
|
|
55
75
|
canPlayLibero() {
|
|
56
76
|
return this.roles.includes(role_1.Role.LIBERO);
|
|
57
77
|
}
|
|
78
|
+
toString() {
|
|
79
|
+
return JSON.stringify({
|
|
80
|
+
id: this.id,
|
|
81
|
+
name: this.name.toString(),
|
|
82
|
+
country: this.country.toString(),
|
|
83
|
+
stats: this.stats.toString(),
|
|
84
|
+
roles: `[${this.roles.map(r => r.toString()).join(',')}]`,
|
|
85
|
+
traits: `[${this.traits.map(r => r.toString()).join(',')}]`,
|
|
86
|
+
generalStats: `[${this.generalStats.map(r => r.toString()).join(',')}]`
|
|
87
|
+
});
|
|
88
|
+
}
|
|
58
89
|
}
|
|
59
90
|
exports.Player = Player;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PerformanceStats } from './performance-stats';
|
|
2
|
+
import { RoleType } from '../../data';
|
|
2
3
|
export declare class Role {
|
|
3
4
|
static readonly SETTER: Role;
|
|
4
5
|
static readonly LIBERO: Role;
|
|
@@ -7,8 +8,9 @@ export declare class Role {
|
|
|
7
8
|
static readonly MIDDLE_BLOCKER: Role;
|
|
8
9
|
static readonly DEFENSIVE_SPECIALIST: Role;
|
|
9
10
|
private static readonly ROLES;
|
|
10
|
-
readonly name:
|
|
11
|
+
readonly name: RoleType;
|
|
11
12
|
private constructor();
|
|
13
|
+
toString(): string;
|
|
12
14
|
static getRoles(): Role[];
|
|
13
15
|
static calculateScore(stats: PerformanceStats, role: Role): number;
|
|
14
16
|
static assignRoles(stats: PerformanceStats): Role[];
|
|
@@ -9,6 +9,9 @@ class Role {
|
|
|
9
9
|
constructor(name) {
|
|
10
10
|
this.name = name;
|
|
11
11
|
}
|
|
12
|
+
toString() {
|
|
13
|
+
return this.name;
|
|
14
|
+
}
|
|
12
15
|
static getRoles() {
|
|
13
16
|
return [...Role.ROLES];
|
|
14
17
|
}
|
|
@@ -36,11 +39,11 @@ class Role {
|
|
|
36
39
|
}
|
|
37
40
|
}
|
|
38
41
|
exports.Role = Role;
|
|
39
|
-
Role.SETTER = new Role('
|
|
40
|
-
Role.LIBERO = new Role('
|
|
41
|
-
Role.OUTSIDE_HITTER = new Role('
|
|
42
|
-
Role.OPPOSITE_HITTER = new Role('
|
|
43
|
-
Role.MIDDLE_BLOCKER = new Role('
|
|
44
|
-
Role.DEFENSIVE_SPECIALIST = new Role('
|
|
42
|
+
Role.SETTER = new Role('SETTER');
|
|
43
|
+
Role.LIBERO = new Role('LIBERO');
|
|
44
|
+
Role.OUTSIDE_HITTER = new Role('OUTSIDE_HITTER');
|
|
45
|
+
Role.OPPOSITE_HITTER = new Role('OPPOSITE_HITTER');
|
|
46
|
+
Role.MIDDLE_BLOCKER = new Role('MIDDLE_BLOCKER');
|
|
47
|
+
Role.DEFENSIVE_SPECIALIST = new Role('DEFENSIVE_SPECIALIST');
|
|
45
48
|
Role.ROLES = [Role.LIBERO, Role.SETTER, Role.OPPOSITE_HITTER, Role.OUTSIDE_HITTER, Role.MIDDLE_BLOCKER,
|
|
46
49
|
Role.DEFENSIVE_SPECIALIST];
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { PerformanceStats } from './performance-stats';
|
|
2
2
|
export declare enum GeneralStat {
|
|
3
|
-
ATTACK = "
|
|
4
|
-
DEFENSE = "
|
|
5
|
-
SERVE = "
|
|
6
|
-
PHYSICAL = "
|
|
3
|
+
ATTACK = "ATTACK",
|
|
4
|
+
DEFENSE = "DEFENSE",
|
|
5
|
+
SERVE = "SERVE",
|
|
6
|
+
PHYSICAL = "PHYSICAL"
|
|
7
7
|
}
|
|
8
8
|
export declare namespace GeneralStat {
|
|
9
9
|
function getStats(): GeneralStat[];
|
|
@@ -7,10 +7,10 @@ exports.GeneralStat = void 0;
|
|
|
7
7
|
const stat_formula_json_1 = __importDefault(require("../../../data/stat.formula.json"));
|
|
8
8
|
var GeneralStat;
|
|
9
9
|
(function (GeneralStat) {
|
|
10
|
-
GeneralStat["ATTACK"] = "
|
|
11
|
-
GeneralStat["DEFENSE"] = "
|
|
12
|
-
GeneralStat["SERVE"] = "
|
|
13
|
-
GeneralStat["PHYSICAL"] = "
|
|
10
|
+
GeneralStat["ATTACK"] = "ATTACK";
|
|
11
|
+
GeneralStat["DEFENSE"] = "DEFENSE";
|
|
12
|
+
GeneralStat["SERVE"] = "SERVE";
|
|
13
|
+
GeneralStat["PHYSICAL"] = "PHYSICAL";
|
|
14
14
|
})(GeneralStat = exports.GeneralStat || (exports.GeneralStat = {}));
|
|
15
15
|
// eslint-disable-next-line @typescript-eslint/no-namespace
|
|
16
16
|
(function (GeneralStat) {
|
|
@@ -37,6 +37,16 @@ class Trait {
|
|
|
37
37
|
return qualifiedTraits.sort((t1, t2) => t2.weight - t1.weight)
|
|
38
38
|
.slice(0, traitCount);
|
|
39
39
|
}
|
|
40
|
+
toString() {
|
|
41
|
+
return JSON.stringify({
|
|
42
|
+
name: this.name,
|
|
43
|
+
modifier: this.modifier,
|
|
44
|
+
statThreshold: this.statThreshold,
|
|
45
|
+
chance: this.chance,
|
|
46
|
+
stat: this.stat,
|
|
47
|
+
weight: this.weight
|
|
48
|
+
});
|
|
49
|
+
}
|
|
40
50
|
}
|
|
41
51
|
exports.Trait = Trait;
|
|
42
52
|
// A Setter gets a bonus to their score and the receiving attacker gets a bonus as well.
|
|
@@ -2,7 +2,7 @@ import { Coach } from '../coach';
|
|
|
2
2
|
import { Player } from '../player';
|
|
3
3
|
import { Country } from '../country';
|
|
4
4
|
import { League } from '../competition';
|
|
5
|
-
interface
|
|
5
|
+
interface TeamParams {
|
|
6
6
|
readonly id: string;
|
|
7
7
|
readonly rating: number;
|
|
8
8
|
readonly name: string;
|
|
@@ -12,7 +12,7 @@ interface TeamOpts {
|
|
|
12
12
|
readonly league?: League;
|
|
13
13
|
readonly coach?: Coach;
|
|
14
14
|
}
|
|
15
|
-
export declare class Team {
|
|
15
|
+
export declare class Team implements TeamParams {
|
|
16
16
|
readonly id: string;
|
|
17
17
|
readonly roster: Player[];
|
|
18
18
|
readonly name: string;
|
|
@@ -21,7 +21,7 @@ export declare class Team {
|
|
|
21
21
|
readonly league?: League;
|
|
22
22
|
readonly country?: Country;
|
|
23
23
|
private _rating;
|
|
24
|
-
constructor({ id, rating, name, shortName, country, roster, coach, league }:
|
|
24
|
+
constructor({ id, rating, name, shortName, country, roster, coach, league }: TeamParams);
|
|
25
25
|
get rating(): number;
|
|
26
26
|
set rating(value: number);
|
|
27
27
|
isPlayerInRoster(player: Player): boolean;
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { CoachAttributes, CoachModel } from '../models';
|
|
2
2
|
import { Coach } from '../../service';
|
|
3
|
-
import { APICoach } from '../../api';
|
|
4
3
|
declare function transformToAttributes(coach: Coach): CoachAttributes;
|
|
5
4
|
declare function transformToObject(model: CoachModel): Coach;
|
|
6
|
-
|
|
7
|
-
export { transformToObject as transformToCoach, transformToAPIObject as transformToAPICoach, transformToAttributes as transformFromCoach };
|
|
5
|
+
export { transformToObject as transformToCoach, transformToAttributes as transformFromCoach };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Coach } from '../../service';
|
|
2
1
|
import { transformFromFormation, transformToCountry, transformToFormation } from '.';
|
|
2
|
+
import { Coach } from '../../service';
|
|
3
3
|
function transformToAttributes(coach) {
|
|
4
4
|
return {
|
|
5
5
|
coach_id: coach.id,
|
|
@@ -22,14 +22,4 @@ function transformToObject(model) {
|
|
|
22
22
|
formation: transformToFormation(model.formation)
|
|
23
23
|
});
|
|
24
24
|
}
|
|
25
|
-
|
|
26
|
-
return {
|
|
27
|
-
id: model.coach_id,
|
|
28
|
-
name: {
|
|
29
|
-
first: model.first_name,
|
|
30
|
-
last: model.last_name
|
|
31
|
-
},
|
|
32
|
-
country: transformToCountry(model.country)
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
export { transformToObject as transformToCoach, transformToAPIObject as transformToAPICoach, transformToAttributes as transformFromCoach };
|
|
25
|
+
export { transformToObject as transformToCoach, transformToAttributes as transformFromCoach };
|
|
@@ -9,9 +9,7 @@ function transformToAttributes(draft) {
|
|
|
9
9
|
};
|
|
10
10
|
}
|
|
11
11
|
function transformToObject(model) {
|
|
12
|
-
const picks = model.DraftPicks != null
|
|
13
|
-
? model.DraftPicks.map(transformToDraftPick)
|
|
14
|
-
: [];
|
|
12
|
+
const picks = model.DraftPicks != null ? model.DraftPicks.map(transformToDraftPick) : [];
|
|
15
13
|
return new Draft({
|
|
16
14
|
id: model.draft_id,
|
|
17
15
|
start: new Date(model.start_date),
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export * from './block';
|
|
2
1
|
export * from './coach';
|
|
3
2
|
export * from './country';
|
|
4
3
|
export * from './court-position';
|
|
@@ -7,7 +6,6 @@ export * from './iteration';
|
|
|
7
6
|
export * from './draft';
|
|
8
7
|
export * from './draft-pick';
|
|
9
8
|
export * from './league';
|
|
10
|
-
export * from './libero-replacement';
|
|
11
9
|
export * from './tournament';
|
|
12
10
|
export * from './tournament-match';
|
|
13
11
|
export * from './stage';
|
|
@@ -18,15 +16,10 @@ export * from './performance-stats';
|
|
|
18
16
|
export * from './player';
|
|
19
17
|
export * from './rally';
|
|
20
18
|
export * from './set-position';
|
|
21
|
-
export * from './reception';
|
|
22
19
|
export * from './role';
|
|
23
20
|
export * from './season';
|
|
24
21
|
export * from './season-match';
|
|
25
22
|
export * from './player-team';
|
|
26
23
|
export * from './match-rating';
|
|
27
|
-
export * from './serve';
|
|
28
|
-
export * from './set';
|
|
29
|
-
export * from './spike';
|
|
30
|
-
export * from './substitution';
|
|
31
24
|
export * from './team';
|
|
32
25
|
export * from './trait';
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export * from './block';
|
|
2
1
|
export * from './coach';
|
|
3
2
|
export * from './country';
|
|
4
3
|
export * from './court-position';
|
|
@@ -7,7 +6,6 @@ export * from './iteration';
|
|
|
7
6
|
export * from './draft';
|
|
8
7
|
export * from './draft-pick';
|
|
9
8
|
export * from './league';
|
|
10
|
-
export * from './libero-replacement';
|
|
11
9
|
export * from './tournament';
|
|
12
10
|
export * from './tournament-match';
|
|
13
11
|
export * from './stage';
|
|
@@ -18,15 +16,10 @@ export * from './performance-stats';
|
|
|
18
16
|
export * from './player';
|
|
19
17
|
export * from './rally';
|
|
20
18
|
export * from './set-position';
|
|
21
|
-
export * from './reception';
|
|
22
19
|
export * from './role';
|
|
23
20
|
export * from './season';
|
|
24
21
|
export * from './season-match';
|
|
25
22
|
export * from './player-team';
|
|
26
23
|
export * from './match-rating';
|
|
27
|
-
export * from './serve';
|
|
28
|
-
export * from './set';
|
|
29
|
-
export * from './spike';
|
|
30
|
-
export * from './substitution';
|
|
31
24
|
export * from './team';
|
|
32
25
|
export * from './trait';
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { LeagueAttributes, LeagueModel } from '../models';
|
|
2
2
|
import { League } from '../../service';
|
|
3
|
-
import { APILeague } from '../../api';
|
|
4
3
|
declare function transformToAttributes(league: League): LeagueAttributes;
|
|
5
4
|
declare function transformToObject(model: LeagueModel): League;
|
|
6
|
-
|
|
7
|
-
export { transformToObject as transformToLeague, transformToAPIObject as transformToAPILeague, transformToAttributes as transformFromLeague };
|
|
5
|
+
export { transformToObject as transformToLeague, transformToAttributes as transformFromLeague };
|