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.
Files changed (99) hide show
  1. package/dist/cjs/src/data/transformers/coach.d.ts +1 -3
  2. package/dist/cjs/src/data/transformers/coach.js +2 -13
  3. package/dist/cjs/src/data/transformers/draft.js +1 -3
  4. package/dist/cjs/src/data/transformers/index.d.ts +0 -7
  5. package/dist/cjs/src/data/transformers/index.js +0 -7
  6. package/dist/cjs/src/data/transformers/league.d.ts +1 -3
  7. package/dist/cjs/src/data/transformers/league.js +1 -9
  8. package/dist/cjs/src/data/transformers/match-set-stats.d.ts +1 -3
  9. package/dist/cjs/src/data/transformers/match-set-stats.js +1 -35
  10. package/dist/cjs/src/data/transformers/match-set.d.ts +1 -3
  11. package/dist/cjs/src/data/transformers/match-set.js +5 -34
  12. package/dist/cjs/src/data/transformers/match.d.ts +2 -4
  13. package/dist/cjs/src/data/transformers/match.js +6 -21
  14. package/dist/cjs/src/data/transformers/player.d.ts +1 -4
  15. package/dist/cjs/src/data/transformers/player.js +1 -68
  16. package/dist/cjs/src/data/transformers/rally.d.ts +1 -3
  17. package/dist/cjs/src/data/transformers/rally.js +3 -42
  18. package/dist/cjs/src/data/transformers/role.d.ts +1 -3
  19. package/dist/cjs/src/data/transformers/role.js +1 -6
  20. package/dist/cjs/src/data/transformers/season.d.ts +1 -3
  21. package/dist/cjs/src/data/transformers/season.js +1 -43
  22. package/dist/cjs/src/data/transformers/team.d.ts +1 -3
  23. package/dist/cjs/src/data/transformers/team.js +1 -13
  24. package/dist/cjs/src/data/transformers/tournament-match.d.ts +1 -3
  25. package/dist/cjs/src/data/transformers/tournament-match.js +1 -9
  26. package/dist/cjs/src/data/transformers/tournament.d.ts +1 -3
  27. package/dist/cjs/src/data/transformers/tournament.js +1 -11
  28. package/dist/cjs/src/data/transformers/trait.d.ts +1 -3
  29. package/dist/cjs/src/data/transformers/trait.js +1 -23
  30. package/dist/cjs/src/index.d.ts +0 -1
  31. package/dist/cjs/src/index.js +0 -1
  32. package/dist/cjs/src/service/country/country.d.ts +1 -0
  33. package/dist/cjs/src/service/country/country.js +9 -0
  34. package/dist/cjs/src/service/match/match-rating.d.ts +2 -2
  35. package/dist/cjs/src/service/match/match-set.d.ts +12 -8
  36. package/dist/cjs/src/service/match/match-set.js +8 -8
  37. package/dist/cjs/src/service/match/match.d.ts +3 -3
  38. package/dist/cjs/src/service/match/rally.d.ts +3 -3
  39. package/dist/cjs/src/service/player/performance-stats.d.ts +4 -3
  40. package/dist/cjs/src/service/player/performance-stats.js +15 -0
  41. package/dist/cjs/src/service/player/player.d.ts +20 -9
  42. package/dist/cjs/src/service/player/player.js +32 -1
  43. package/dist/cjs/src/service/player/role.d.ts +3 -1
  44. package/dist/cjs/src/service/player/role.js +9 -6
  45. package/dist/cjs/src/service/player/stats.d.ts +4 -4
  46. package/dist/cjs/src/service/player/stats.js +4 -4
  47. package/dist/cjs/src/service/player/trait.d.ts +1 -0
  48. package/dist/cjs/src/service/player/trait.js +10 -0
  49. package/dist/cjs/src/service/team/team.d.ts +3 -3
  50. package/dist/esm/src/data/transformers/coach.d.ts +1 -3
  51. package/dist/esm/src/data/transformers/coach.js +2 -12
  52. package/dist/esm/src/data/transformers/draft.js +1 -3
  53. package/dist/esm/src/data/transformers/index.d.ts +0 -7
  54. package/dist/esm/src/data/transformers/index.js +0 -7
  55. package/dist/esm/src/data/transformers/league.d.ts +1 -3
  56. package/dist/esm/src/data/transformers/league.js +1 -8
  57. package/dist/esm/src/data/transformers/match-set-stats.d.ts +1 -3
  58. package/dist/esm/src/data/transformers/match-set-stats.js +1 -34
  59. package/dist/esm/src/data/transformers/match-set.d.ts +1 -3
  60. package/dist/esm/src/data/transformers/match-set.js +8 -36
  61. package/dist/esm/src/data/transformers/match.d.ts +2 -4
  62. package/dist/esm/src/data/transformers/match.js +3 -17
  63. package/dist/esm/src/data/transformers/player.d.ts +1 -4
  64. package/dist/esm/src/data/transformers/player.js +3 -68
  65. package/dist/esm/src/data/transformers/rally.d.ts +1 -3
  66. package/dist/esm/src/data/transformers/rally.js +2 -40
  67. package/dist/esm/src/data/transformers/role.d.ts +1 -3
  68. package/dist/esm/src/data/transformers/role.js +1 -5
  69. package/dist/esm/src/data/transformers/season.d.ts +1 -3
  70. package/dist/esm/src/data/transformers/season.js +2 -43
  71. package/dist/esm/src/data/transformers/team.d.ts +1 -3
  72. package/dist/esm/src/data/transformers/team.js +2 -13
  73. package/dist/esm/src/data/transformers/tournament-match.d.ts +1 -3
  74. package/dist/esm/src/data/transformers/tournament-match.js +2 -9
  75. package/dist/esm/src/data/transformers/tournament.d.ts +1 -3
  76. package/dist/esm/src/data/transformers/tournament.js +2 -11
  77. package/dist/esm/src/data/transformers/trait.d.ts +1 -3
  78. package/dist/esm/src/data/transformers/trait.js +1 -22
  79. package/dist/esm/src/index.d.ts +0 -1
  80. package/dist/esm/src/index.js +0 -1
  81. package/dist/esm/src/service/country/country.d.ts +1 -0
  82. package/dist/esm/src/service/country/country.js +9 -0
  83. package/dist/esm/src/service/match/match-rating.d.ts +2 -2
  84. package/dist/esm/src/service/match/match-set.d.ts +12 -8
  85. package/dist/esm/src/service/match/match-set.js +8 -8
  86. package/dist/esm/src/service/match/match.d.ts +3 -3
  87. package/dist/esm/src/service/match/rally.d.ts +3 -3
  88. package/dist/esm/src/service/player/performance-stats.d.ts +4 -3
  89. package/dist/esm/src/service/player/performance-stats.js +15 -0
  90. package/dist/esm/src/service/player/player.d.ts +20 -9
  91. package/dist/esm/src/service/player/player.js +29 -0
  92. package/dist/esm/src/service/player/role.d.ts +3 -1
  93. package/dist/esm/src/service/player/role.js +9 -6
  94. package/dist/esm/src/service/player/stats.d.ts +4 -4
  95. package/dist/esm/src/service/player/stats.js +4 -4
  96. package/dist/esm/src/service/player/trait.d.ts +1 -0
  97. package/dist/esm/src/service/player/trait.js +10 -0
  98. package/dist/esm/src/service/team/team.d.ts +3 -3
  99. 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
- declare function transformToAPIObject(model: CompetitionModel): APITournament;
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.transformToAPITournament = exports.transformToTournament = void 0;
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, transformToAPIObject as transformToAPITrait, transformToAttributes as transformFromTrait };
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.transformToAPITrait = exports.transformToTrait = void 0;
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) {
@@ -1,3 +1,2 @@
1
1
  export * from './service';
2
- export * from './api';
3
2
  export * from './data';
@@ -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);
@@ -12,5 +12,6 @@ export declare class Country {
12
12
  readonly language?: string;
13
13
  readonly league?: string;
14
14
  constructor({ id, name, short, language, league }: CountryOpts);
15
+ toString(): string;
15
16
  }
16
17
  export {};
@@ -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 MatchRatingOpts {
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 }: MatchRatingOpts);
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
- interface MatchSetOpts {
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
- private readonly scoreThreshold;
43
- private homeScore;
44
- private awayScore;
45
- constructor({ id, order, isTieBreak, homePlayerPosition, awayPlayerPosition, stats, rallies, homeScore, awayScore }: MatchSetOpts);
46
- getHomeScore(): number;
47
- getAwayScore(): number;
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.homeScore = homeScore;
17
- this.awayScore = awayScore;
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
- getHomeScore() {
26
- return this.homeScore;
25
+ get homeScore() {
26
+ return this._homeScore;
27
27
  }
28
- getAwayScore() {
29
- return this.awayScore;
28
+ get awayScore() {
29
+ return this._awayScore;
30
30
  }
31
31
  increaseScore(team) {
32
32
  if (team === match_team_1.MatchTeam.HOME)
33
- this.homeScore++;
33
+ this._homeScore++;
34
34
  else if (team === match_team_1.MatchTeam.AWAY)
35
- this.awayScore++;
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 MatchOpts {
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 }: MatchOpts);
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 RallyOpts {
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 }: RallyOpts);
19
+ constructor({ id, order, servingTeam, events }: RallyParams);
20
20
  addEvent(event: RallyEvent): void;
21
21
  }
22
22
  export {};
@@ -1,4 +1,4 @@
1
- interface PerformanceStatsOpts {
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: PerformanceStatsOpts);
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 interface Stat {
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 PlayerOpts {
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 interface Name {
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 }: PlayerOpts);
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: string;
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('Setter');
40
- Role.LIBERO = new Role('Libero');
41
- Role.OUTSIDE_HITTER = new Role('Outside Hitter');
42
- Role.OPPOSITE_HITTER = new Role('Opposite Hitter');
43
- Role.MIDDLE_BLOCKER = new Role('Middle Blocker');
44
- Role.DEFENSIVE_SPECIALIST = new Role('Defensive Specialist');
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 = "Attack",
4
- DEFENSE = "Defense",
5
- SERVE = "Serve",
6
- PHYSICAL = "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"] = "Attack";
11
- GeneralStat["DEFENSE"] = "Defense";
12
- GeneralStat["SERVE"] = "Serve";
13
- GeneralStat["PHYSICAL"] = "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) {
@@ -17,4 +17,5 @@ export declare class Trait {
17
17
  private constructor();
18
18
  static getTraits(): Trait[];
19
19
  static assignTraits(performanceStats: PerformanceStats): Trait[];
20
+ toString(): string;
20
21
  }
@@ -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 TeamOpts {
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 }: TeamOpts);
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
- declare function transformToAPIObject(model: CoachModel): APICoach;
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
- function transformToAPIObject(model) {
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
- declare function transformToAPIObject(model: LeagueModel): APILeague;
7
- export { transformToObject as transformToLeague, transformToAPIObject as transformToAPILeague, transformToAttributes as transformFromLeague };
5
+ export { transformToObject as transformToLeague, transformToAttributes as transformFromLeague };