volleyballsimtypes 0.0.7 → 0.0.8

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 (132) hide show
  1. package/package.json +5 -5
  2. package/src/data/index.ts +0 -2
  3. package/src/data/models/block.ts +0 -159
  4. package/src/data/models/coach.ts +0 -94
  5. package/src/data/models/country.ts +0 -105
  6. package/src/data/models/event.ts +0 -83
  7. package/src/data/models/index.ts +0 -22
  8. package/src/data/models/league.ts +0 -90
  9. package/src/data/models/libero-replacement.ts +0 -104
  10. package/src/data/models/match-set-stats.ts +0 -204
  11. package/src/data/models/match-set.ts +0 -152
  12. package/src/data/models/match.ts +0 -106
  13. package/src/data/models/performance-stats.ts +0 -136
  14. package/src/data/models/player.ts +0 -370
  15. package/src/data/models/rally-position.ts +0 -79
  16. package/src/data/models/rally.ts +0 -229
  17. package/src/data/models/reception.ts +0 -113
  18. package/src/data/models/score.ts +0 -99
  19. package/src/data/models/season-teams.ts +0 -67
  20. package/src/data/models/season.ts +0 -103
  21. package/src/data/models/serve.ts +0 -113
  22. package/src/data/models/set.ts +0 -113
  23. package/src/data/models/spike.ts +0 -113
  24. package/src/data/models/substitution.ts +0 -98
  25. package/src/data/models/team.ts +0 -193
  26. package/src/data/transformers/block.ts +0 -117
  27. package/src/data/transformers/coach.ts +0 -33
  28. package/src/data/transformers/country.ts +0 -23
  29. package/src/data/transformers/court-position.ts +0 -43
  30. package/src/data/transformers/court-target.ts +0 -58
  31. package/src/data/transformers/event-type.ts +0 -35
  32. package/src/data/transformers/formation.ts +0 -16
  33. package/src/data/transformers/index.ts +0 -27
  34. package/src/data/transformers/league.ts +0 -26
  35. package/src/data/transformers/libero-replacement.ts +0 -62
  36. package/src/data/transformers/match-set-stats.ts +0 -101
  37. package/src/data/transformers/match-set.ts +0 -59
  38. package/src/data/transformers/match.ts +0 -48
  39. package/src/data/transformers/performance-stats.ts +0 -40
  40. package/src/data/transformers/player.ts +0 -109
  41. package/src/data/transformers/rally-position.ts +0 -24
  42. package/src/data/transformers/rally.ts +0 -139
  43. package/src/data/transformers/reception.ts +0 -98
  44. package/src/data/transformers/role.ts +0 -31
  45. package/src/data/transformers/score.ts +0 -43
  46. package/src/data/transformers/season.ts +0 -42
  47. package/src/data/transformers/serve.ts +0 -100
  48. package/src/data/transformers/set.ts +0 -98
  49. package/src/data/transformers/spike.ts +0 -102
  50. package/src/data/transformers/substitution.ts +0 -42
  51. package/src/data/transformers/team.ts +0 -45
  52. package/src/data/transformers/trait.ts +0 -37
  53. package/src/index.ts +0 -7
  54. package/src/routing/events.ts +0 -60
  55. package/src/routing/index.ts +0 -5
  56. package/src/routing/league.ts +0 -15
  57. package/src/routing/match.ts +0 -52
  58. package/src/routing/player.ts +0 -24
  59. package/src/routing/team.ts +0 -14
  60. package/src/service/coach/__stubs__/index.ts +0 -46
  61. package/src/service/coach/coach.test.ts +0 -10
  62. package/src/service/coach/coach.ts +0 -30
  63. package/src/service/coach/formation.test.ts +0 -10
  64. package/src/service/coach/formation.ts +0 -160
  65. package/src/service/coach/index.ts +0 -2
  66. package/src/service/country/__stubs__/index.ts +0 -13
  67. package/src/service/country/country.test.ts +0 -10
  68. package/src/service/country/country.ts +0 -23
  69. package/src/service/country/index.ts +0 -1
  70. package/src/service/event/__stubs__/index.ts +0 -25
  71. package/src/service/event/block.test.ts +0 -100
  72. package/src/service/event/block.ts +0 -69
  73. package/src/service/event/in-play-event.ts +0 -37
  74. package/src/service/event/libero-replacement.test.ts +0 -37
  75. package/src/service/event/libero-replacement.ts +0 -25
  76. package/src/service/event/rally-event.ts +0 -33
  77. package/src/service/event/reception.test.ts +0 -50
  78. package/src/service/event/reception.ts +0 -38
  79. package/src/service/event/score.test.ts +0 -29
  80. package/src/service/event/score.ts +0 -22
  81. package/src/service/event/serve.test.ts +0 -50
  82. package/src/service/event/serve.ts +0 -39
  83. package/src/service/event/set.test.ts +0 -50
  84. package/src/service/event/set.ts +0 -38
  85. package/src/service/event/spike.test.ts +0 -64
  86. package/src/service/event/spike.ts +0 -46
  87. package/src/service/event/substitution.ts +0 -16
  88. package/src/service/index.ts +0 -17
  89. package/src/service/league/index.ts +0 -3
  90. package/src/service/league/league.ts +0 -112
  91. package/src/service/league/season.ts +0 -41
  92. package/src/service/league/standing.ts +0 -82
  93. package/src/service/main.ts +0 -52
  94. package/src/service/match/__stubs__/index.ts +0 -119
  95. package/src/service/match/court-position.test.ts +0 -73
  96. package/src/service/match/court-position.ts +0 -46
  97. package/src/service/match/court-target.test.ts +0 -39
  98. package/src/service/match/court-target.ts +0 -30
  99. package/src/service/match/index.ts +0 -6
  100. package/src/service/match/match-set.test.ts +0 -174
  101. package/src/service/match/match-set.ts +0 -140
  102. package/src/service/match/match-team.test.ts +0 -16
  103. package/src/service/match/match-team.ts +0 -13
  104. package/src/service/match/match.test.ts +0 -80
  105. package/src/service/match/match.ts +0 -63
  106. package/src/service/match/rally.test.ts +0 -94
  107. package/src/service/match/rally.ts +0 -79
  108. package/src/service/player/__stubs__/index.ts +0 -1433
  109. package/src/service/player/index.ts +0 -5
  110. package/src/service/player/performance-stats.test.ts +0 -24
  111. package/src/service/player/performance-stats.ts +0 -47
  112. package/src/service/player/player.test.ts +0 -51
  113. package/src/service/player/player.ts +0 -101
  114. package/src/service/player/role.test.ts +0 -29
  115. package/src/service/player/role.ts +0 -33
  116. package/src/service/player/stats.test.ts +0 -23
  117. package/src/service/player/stats.ts +0 -29
  118. package/src/service/player/trait.test.ts +0 -10
  119. package/src/service/player/trait.ts +0 -124
  120. package/src/service/team/__stubs__/index.ts +0 -290
  121. package/src/service/team/index.ts +0 -1
  122. package/src/service/team/team.test.ts +0 -30
  123. package/src/service/team/team.ts +0 -45
  124. package/src/service/utils/enum-utils.test.ts +0 -10
  125. package/src/service/utils/enum-utils.ts +0 -6
  126. package/src/service/utils/index.ts +0 -4
  127. package/src/service/utils/object-utils.ts +0 -1
  128. package/src/service/utils/rng-utils.test.ts +0 -32
  129. package/src/service/utils/rng-utils.ts +0 -41
  130. package/src/service/utils/string-utils.test.ts +0 -28
  131. package/src/service/utils/string-utils.ts +0 -13
  132. package/src/service/utils/testing-utils.ts +0 -2
@@ -1,98 +0,0 @@
1
- import { Rally, Set, SetFailure, SetType } from '../../service'
2
- import { SetAttributes, SetModel } from '../models'
3
- import { transformFromEventType, transformToEventType } from './event-type'
4
- import { transformFromCourtTarget, transformToCourtTarget } from './court-target'
5
- import { transformToPlayer } from './player'
6
- import { APISet } from '../../routing'
7
-
8
- type setFailure = 'NO_FAILURE' | 'FAULT' | 'MISS' | 'OUT_OF_BOUNDS' | 'BAD_PASS'
9
- type serveType = 'OVERHAND' | 'UNDERHAND' | 'SPIKE' | 'DUMP'
10
-
11
- function transformToSetFailure (failure: SetFailure): setFailure {
12
- switch (failure) {
13
- case SetFailure.NO_FAILURE:
14
- return 'NO_FAILURE'
15
- case SetFailure.FAULT:
16
- return 'FAULT'
17
- case SetFailure.MISS:
18
- return 'MISS'
19
- case SetFailure.OUT_OF_BOUNDS:
20
- return 'OUT_OF_BOUNDS'
21
- case SetFailure.BAD_PASS:
22
- return 'BAD_PASS'
23
- default:
24
- throw new Error('UNKNOWN_ROLE')
25
- }
26
- }
27
-
28
- function transformFromSetFailure (failure: setFailure): SetFailure {
29
- return SetFailure[failure]
30
- }
31
-
32
- function transformToSetType (type: SetType): serveType {
33
- switch (type) {
34
- case SetType.OVERHAND:
35
- return 'OVERHAND'
36
- case SetType.UNDERHAND:
37
- return 'UNDERHAND'
38
- case SetType.SPIKE:
39
- return 'SPIKE'
40
- case SetType.DUMP:
41
- return 'DUMP'
42
- default:
43
- throw new Error('UNKNOWN_ROLE')
44
- }
45
- }
46
-
47
- function transformFromSetType (type: serveType): SetType {
48
- return SetType[type]
49
- }
50
-
51
- function transformToAttributes (event: Set, rally: Rally): SetAttributes {
52
- return {
53
- event_id: event.id,
54
- player_id: event.player.id,
55
- rally_id: rally.id,
56
- order: event.order,
57
- modifier: event.modifier,
58
- score: event.score,
59
- target: transformFromCourtTarget(event.target),
60
- failure: transformToSetFailure(event.failure),
61
- type: transformToSetType(event.type),
62
- event_type: transformFromEventType(event.eventType)
63
- }
64
- }
65
-
66
- function transformToObject (set: SetModel): Set {
67
- return new Set({
68
- id: set.event_id,
69
- eventType: transformToEventType(set.event_type),
70
- failure: transformFromSetFailure(set.failure),
71
- type: transformFromSetType(set.type),
72
- player: transformToPlayer(set.player),
73
- target: transformToCourtTarget(set.target),
74
- modifier: set.modifier,
75
- order: set.order,
76
- score: set.score
77
- })
78
- }
79
-
80
- function transformToAPIObject (event: SetModel): APISet {
81
- return {
82
- id: event.event_id,
83
- eventType: transformToEventType(event.event_type),
84
- failure: transformFromSetFailure(event.failure),
85
- type: transformFromSetType(event.type),
86
- playerId: event.player_id,
87
- target: transformToCourtTarget(event.target),
88
- modifier: event.modifier,
89
- order: event.order,
90
- score: event.score
91
- }
92
- }
93
-
94
- export {
95
- transformToObject as transformToSet,
96
- transformToAPIObject as transformToAPISet,
97
- transformToAttributes as transformFromSet
98
- }
@@ -1,102 +0,0 @@
1
- import { Rally, Spike, SpikeFailure, SpikeType } from '../../service'
2
- import { SpikeAttributes, SpikeModel } from '../models'
3
- import { transformFromEventType, transformToEventType } from './event-type'
4
- import { transformFromCourtTarget, transformToCourtTarget } from './court-target'
5
- import { transformToPlayer } from './player'
6
- import { APISpike } from '../../routing'
7
-
8
- type spikeFailure = 'NO_FAILURE' | 'FAULT' | 'MISS' | 'OUT_OF_BOUNDS' | 'NET'
9
- type spikeType = 'CROSS_SHOT' | 'LINE_SHOT' | 'TOOL_SHOT' | 'TIP' | 'DOWN_BALL' | 'OVERHAND'
10
-
11
- function transformToSpikeFailure (failure: SpikeFailure): spikeFailure {
12
- switch (failure) {
13
- case SpikeFailure.NO_FAILURE:
14
- return 'NO_FAILURE'
15
- case SpikeFailure.FAULT:
16
- return 'FAULT'
17
- case SpikeFailure.MISS:
18
- return 'MISS'
19
- case SpikeFailure.OUT_OF_BOUNDS:
20
- return 'OUT_OF_BOUNDS'
21
- case SpikeFailure.NET:
22
- return 'NET'
23
- default:
24
- throw new Error('UNKNOWN_ROLE')
25
- }
26
- }
27
-
28
- function transformFromSpikeFailure (failure: spikeFailure): SpikeFailure {
29
- return SpikeFailure[failure]
30
- }
31
-
32
- function transformToSpikeType (type: SpikeType): spikeType {
33
- switch (type) {
34
- case SpikeType.CROSS_SHOT:
35
- return 'CROSS_SHOT'
36
- case SpikeType.LINE_SHOT:
37
- return 'LINE_SHOT'
38
- case SpikeType.TOOL_SHOT:
39
- return 'TOOL_SHOT'
40
- case SpikeType.TIP:
41
- return 'TIP'
42
- case SpikeType.DOWN_BALL:
43
- return 'DOWN_BALL'
44
- case SpikeType.OVERHAND:
45
- return 'OVERHAND'
46
- default:
47
- throw new Error('UNKNOWN_ROLE')
48
- }
49
- }
50
-
51
- function transformFromSpikeType (type: spikeType): SpikeType {
52
- return SpikeType[type]
53
- }
54
-
55
- function transformToAttributes (event: Spike, rally: Rally): SpikeAttributes {
56
- return {
57
- event_id: event.id,
58
- player_id: event.player.id,
59
- rally_id: rally.id,
60
- order: event.order,
61
- modifier: event.modifier,
62
- score: event.score,
63
- target: transformFromCourtTarget(event.target),
64
- failure: transformToSpikeFailure(event.failure),
65
- type: transformToSpikeType(event.type),
66
- event_type: transformFromEventType(event.eventType)
67
- }
68
- }
69
-
70
- function transformToObject (spike: SpikeModel): Spike {
71
- return new Spike({
72
- id: spike.event_id,
73
- eventType: transformToEventType(spike.event_type),
74
- failure: transformFromSpikeFailure(spike.failure),
75
- type: transformFromSpikeType(spike.type),
76
- player: transformToPlayer(spike.player),
77
- target: transformToCourtTarget(spike.target),
78
- modifier: spike.modifier,
79
- order: spike.order,
80
- score: spike.score
81
- })
82
- }
83
-
84
- function transformToAPIObject (event: SpikeModel): APISpike {
85
- return {
86
- id: event.event_id,
87
- eventType: transformToEventType(event.event_type),
88
- failure: transformFromSpikeFailure(event.failure),
89
- type: transformFromSpikeType(event.type),
90
- playerId: event.player_id,
91
- target: transformToCourtTarget(event.target),
92
- modifier: event.modifier,
93
- order: event.order,
94
- score: event.score
95
- }
96
- }
97
-
98
- export {
99
- transformToObject as transformToSpike,
100
- transformToAPIObject as transformToAPISpike,
101
- transformToAttributes as transformFromSpike
102
- }
@@ -1,42 +0,0 @@
1
- import { Rally, Substitution } from '../../service'
2
- import { SubstitutionAttributes, SubstitutionModel } from '../models'
3
- import { transformFromEventType, transformToEventType } from './event-type'
4
- import { transformToPlayer } from './player'
5
- import { APISubstitution } from '../../routing'
6
-
7
- function transformToAttributes (event: Substitution, rally: Rally): SubstitutionAttributes {
8
- return {
9
- player_id: event.player.id,
10
- event_id: event.id,
11
- order: event.order,
12
- event_type: transformFromEventType(event.eventType),
13
- player_out: event.playerOut.id,
14
- rally_id: rally.id
15
- }
16
- }
17
-
18
- function transformToObject (event: SubstitutionModel): Substitution {
19
- return new Substitution({
20
- id: event.event_id,
21
- player: transformToPlayer(event.player),
22
- playerOut: transformToPlayer(event.player_out_Player),
23
- order: event.order,
24
- eventType: transformToEventType(event.event_type)
25
- })
26
- }
27
-
28
- function transformToAPIObject (event: SubstitutionModel): APISubstitution {
29
- return {
30
- id: event.event_id,
31
- eventType: transformToEventType(event.event_type),
32
- playerId: event.player_id,
33
- order: event.order,
34
- playerOutId: event.player_out
35
- }
36
- }
37
-
38
- export {
39
- transformToObject as transformToSubstitution,
40
- transformToAPIObject as transformToAPISubstitution,
41
- transformToAttributes as transformFromSubstitution
42
- }
@@ -1,45 +0,0 @@
1
- import { Team } from '../../service'
2
- import { TeamAttributes, TeamModel } from '../models'
3
- import { transformToCountry } from './country'
4
- import { transformToCoach } from './coach'
5
- import { transformToAPIPlayer, transformToPlayer } from './player'
6
- import { APITeam } from '../../routing'
7
-
8
- function transformToAttributes (team: Team): TeamAttributes {
9
- return {
10
- team_id: team.id,
11
- name: team.name,
12
- short_name: team.shortName,
13
- coach_id: team.coach!.id,
14
- country_id: team.country!.id,
15
- league_id: team.league!.id
16
- }
17
- }
18
-
19
- function transformToObject (team: TeamModel): Team {
20
- return new Team({
21
- id: team.team_id,
22
- name: team.name,
23
- shortName: team.short_name,
24
- country: team.country != null ? transformToCountry(team.country) : undefined,
25
- coach: team.coach != null ? transformToCoach(team.coach) : undefined,
26
- roster: team.Players != null ? team.Players.map(transformToPlayer) : []
27
- })
28
- }
29
-
30
- function transformToAPIObject (team: TeamModel): APITeam {
31
- return {
32
- id: team.team_id,
33
- name: team.name,
34
- shortName: team.short_name,
35
- country: transformToCountry(team.country),
36
- coach: transformToCoach(team.coach),
37
- roster: team.Players != null ? team.Players.map(transformToAPIPlayer) : []
38
- }
39
- }
40
-
41
- export {
42
- transformToObject as transformToTeam,
43
- transformToAPIObject as transformToAPITeam,
44
- transformToAttributes as transformFromTeam
45
- }
@@ -1,37 +0,0 @@
1
- import { Trait } from '../../service/player/trait'
2
- import { APITrait } from '../../routing'
3
-
4
- type trait = 'MARKSMAN' | 'MOVING_WALL' | 'MASTER_MIND' | 'METEOR_SERVE' | 'VIGOROUS' | 'GUARDIAN'
5
-
6
- function transformToType (trait: Trait): trait {
7
- switch (trait.name) {
8
- case 'Marksman':
9
- return 'MARKSMAN'
10
- case 'Master Mind':
11
- return 'MASTER_MIND'
12
- case 'Moving Wall':
13
- return 'MOVING_WALL'
14
- case 'Meteor Serve':
15
- return 'METEOR_SERVE'
16
- case 'Vigorous':
17
- return 'VIGOROUS'
18
- case 'Guardian':
19
- return 'GUARDIAN'
20
- default:
21
- throw new Error('UNKNOWN_TRAIT')
22
- }
23
- }
24
-
25
- function transformFromType (trait: trait): Trait {
26
- return Trait[trait]
27
- }
28
-
29
- function transformToEnum (trait: trait): APITrait {
30
- return APITrait[trait]
31
- }
32
-
33
- export {
34
- transformToType as transformFromTrait,
35
- transformFromType as transformToTrait,
36
- transformToEnum as transformToAPITrait
37
- }
package/src/index.ts DELETED
@@ -1,7 +0,0 @@
1
- import { validateRoleFormulas } from './service/main'
2
-
3
- validateRoleFormulas()
4
-
5
- export * from './service'
6
- export * from './routing'
7
- export * from './data'
@@ -1,60 +0,0 @@
1
- import { EventType } from '../service/event/rally-event'
2
- import { LiberoReplacementType } from '../service/event/libero-replacement'
3
- import { CourtTarget } from '../service/match'
4
- import { SpikeFailure, SpikeType } from '../service/event/spike'
5
- import { SetFailure, SetType } from '../service/event/set'
6
- import { ServeFailure, ServeType } from '../service/event/serve'
7
- import { BlockFailure, BlockType } from '../service/event/block'
8
- import { ReceptionFailure, ReceptionType } from '../service/event/reception'
9
-
10
- export interface APIEvent {
11
- id: string
12
- order: number
13
- playerId: string
14
- eventType: EventType
15
- }
16
-
17
- export interface APILiberoReplacement extends APIEvent {
18
- type: LiberoReplacementType
19
- liberoId: string
20
- }
21
-
22
- export interface APISubstitution extends APIEvent {
23
- playerOutId: string
24
- }
25
-
26
- export interface APIInPlayEvent extends APIEvent {
27
- target: CourtTarget
28
- modifier: number
29
- score: number
30
- }
31
-
32
- export interface APIScore extends APIEvent {
33
- teamId: string
34
- }
35
-
36
- export interface APIServe extends APIInPlayEvent {
37
- type: ServeType
38
- failure: ServeFailure
39
- }
40
-
41
- export interface APISet extends APIInPlayEvent {
42
- type: SetType
43
- failure: SetFailure
44
- }
45
-
46
- export interface APISpike extends APIInPlayEvent {
47
- failure: SpikeFailure
48
- type: SpikeType
49
- }
50
-
51
- export interface APIReception extends APIInPlayEvent {
52
- type: ReceptionType
53
- failure: ReceptionFailure
54
- }
55
-
56
- export interface APIBlock extends APIInPlayEvent {
57
- failure: BlockFailure
58
- type: BlockType
59
- blockers: string[]
60
- }
@@ -1,5 +0,0 @@
1
- export * from './events'
2
- export * from './league'
3
- export * from './match'
4
- export * from './player'
5
- export * from './team'
@@ -1,15 +0,0 @@
1
- import { League, Standing } from '../service/league'
2
- import { APITeam } from './team'
3
- import { APIMatch } from './match'
4
-
5
- export interface APILeague {
6
-
7
- }
8
- export interface APISeason {
9
- id: string
10
- teams: APITeam[]
11
- matches: APIMatch[]
12
- iteration: number
13
- standings: Standing[]
14
- league: League
15
- }
@@ -1,52 +0,0 @@
1
- import { EventStat, PlayerPosition, SetStatistics } from '../service/match'
2
- import { APIEvent } from './events'
3
- import { Team } from '../service/team'
4
- import { Player } from '../service/player'
5
- import { APITeam } from './team'
6
-
7
- export interface APIMatch {
8
- id: string
9
- homeTeam: APITeam
10
- awayTeam: APITeam
11
- sets: APIMatchSet[]
12
- scheduledDate: Date
13
- }
14
-
15
- export interface APIMatchSet {
16
- id: string
17
- order: number
18
- isTieBreak: boolean
19
- homeLiberoId: string | undefined
20
- awayLiberoId: string | undefined
21
- homeScore: number
22
- awayScore: number
23
- stats: APISetStatistics[]
24
- rallies: APIRally[]
25
- }
26
-
27
- export interface APIRally {
28
- id: string
29
- servingTeamId: string
30
- events: APIEvent[]
31
- homePlayerPosition: PlayerPosition[]
32
- awayPlayerPosition: PlayerPosition[]
33
- order: number
34
- }
35
-
36
- export interface APISetStatistics {
37
- order: number
38
- playerId: string
39
- ace: number
40
- attempts: number
41
- contacts: number
42
- ralliesPlayed: number
43
- serve: EventStat
44
- reception: EventStat
45
- set: EventStat
46
- attack: EventStat
47
- block: EventStat
48
- kills: number
49
- killBlocks: number
50
- assists: number
51
- setsPlayed?: number
52
- }
@@ -1,24 +0,0 @@
1
- import { Country } from '../service/country'
2
- import { Name, Role, Stat } from '../service/player'
3
- import { APISetStatistics } from './match'
4
-
5
- export enum APITrait {
6
- MASTER_MIND = 'Master Mind',
7
- MOVING_WALL = 'Moving Wall',
8
- MARKSMAN = 'Marksman',
9
- METEOR_SERVE = 'Meteor Serve',
10
- VIGOROUS = 'Vigorous',
11
- GUARDIAN = 'Guardian'
12
- }
13
-
14
- export interface APIPlayer {
15
- id: string
16
- name: Name
17
- country: Country
18
- gameStats: APISetStatistics[]
19
- roles: Role[]
20
- traits: APITrait[]
21
- jerseyNumber: number
22
- team: string
23
- generalStats: Stat[]
24
- }
@@ -1,14 +0,0 @@
1
- import { Coach } from '../service/coach'
2
- import { Country } from '../service/country'
3
- import { APIPlayer } from './player'
4
- import { APILeague } from './league'
5
-
6
- export interface APITeam {
7
- id: string
8
- roster: APIPlayer[]
9
- name: string
10
- shortName: string
11
- coach: Coach
12
- country: Country
13
- league?: string
14
- }
@@ -1,46 +0,0 @@
1
- import { Coach } from '../coach'
2
- import { Formation } from '../formation'
3
- import { countries, country } from '../../country/__stubs__'
4
-
5
- export const coaches = [
6
- new Coach({
7
- name: { first: 'Jameson', last: 'Richardson' },
8
- id: '8cd3a3fb-2034-487c-a041-fb06de0e374b',
9
- country: countries[0],
10
- formation: Formation['4-2'],
11
- substitutionTolerance: 5
12
- }),
13
- new Coach({
14
- id: '1be93fd6-62c4-4434-aaa0-730212ab72d7',
15
- name: { first: 'Hunter', last: 'Rivera' },
16
- country: countries[1],
17
- formation: Formation['5-1'],
18
- substitutionTolerance: 5
19
- }),
20
- new Coach({
21
- id: 'a96b6732-2a71-451e-8973-c264446c594d',
22
- name: {
23
- first: 'Jonathan',
24
- last: 'Jenkins'
25
- },
26
- country: countries[2],
27
- formation: Formation['5-1'],
28
- substitutionTolerance: 5
29
- }),
30
- new Coach({
31
- id: '34086150-9692-4371-a5a4-0349170339e7',
32
- name: { first: 'Noah', last: 'Adams' },
33
- country: countries[3],
34
- formation: Formation['6-2'],
35
- substitutionTolerance: 5
36
- })
37
-
38
- ]
39
-
40
- export const coach: Coach = new Coach({
41
- id: '1ad40ceb-b5ad-4e20-953c-3c1f050ac61d',
42
- formation: Formation['6-2'],
43
- name: { first: 'Julio', last: 'Velasco' },
44
- country,
45
- substitutionTolerance: 5
46
- })
@@ -1,10 +0,0 @@
1
- import { describe, expect, test } from '@jest/globals'
2
- import { coach } from './__stubs__'
3
-
4
- describe('Coach Test Module', () => {
5
- test('Should instantiate object properly', () => {
6
- expect(coach.id).toEqual('1ad40ceb-b5ad-4e20-953c-3c1f050ac61d')
7
- expect(coach.name.first).toEqual('Julio')
8
- expect(coach.name.last).toEqual('Velasco')
9
- })
10
- })
@@ -1,30 +0,0 @@
1
- import { Formation } from './formation'
2
- import { validateUUID } from '../utils'
3
- import { Name } from '../player'
4
- import { Country } from '../country'
5
-
6
- export interface CoachOpts {
7
- readonly id: string
8
- readonly name: Name
9
- readonly country: Country
10
- readonly formation?: Formation
11
- readonly substitutionTolerance?: number
12
- }
13
-
14
- export class Coach {
15
- readonly id: string
16
- readonly name: Name
17
- readonly country: Country
18
- readonly formation?: Formation
19
- readonly substitutionTolerance?: number
20
-
21
- constructor ({ id, name, country, formation, substitutionTolerance }: CoachOpts) {
22
- validateUUID(id)
23
-
24
- this.id = id
25
- this.name = name
26
- this.country = country
27
- this.formation = formation
28
- this.substitutionTolerance = substitutionTolerance
29
- }
30
- }
@@ -1,10 +0,0 @@
1
- import { describe, expect, test } from '@jest/globals'
2
-
3
- describe('Formation Test Module', () => {
4
- // getFormation Tests
5
- test('Should return supported formations', () => {
6
- // TODO
7
-
8
- expect(1).toBe(1)
9
- })
10
- })