volleyballsimtypes 0.0.6 → 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.
- package/dist/src/service/event/in-play-event.js.map +1 -1
- package/package.json +5 -5
- package/src/data/index.ts +0 -2
- package/src/data/models/block.ts +0 -159
- package/src/data/models/coach.ts +0 -94
- package/src/data/models/country.ts +0 -105
- package/src/data/models/event.ts +0 -83
- package/src/data/models/index.ts +0 -22
- package/src/data/models/league.ts +0 -90
- package/src/data/models/libero-replacement.ts +0 -104
- package/src/data/models/match-set-stats.ts +0 -204
- package/src/data/models/match-set.ts +0 -152
- package/src/data/models/match.ts +0 -106
- package/src/data/models/performance-stats.ts +0 -136
- package/src/data/models/player.ts +0 -370
- package/src/data/models/rally-position.ts +0 -79
- package/src/data/models/rally.ts +0 -229
- package/src/data/models/reception.ts +0 -113
- package/src/data/models/score.ts +0 -99
- package/src/data/models/season-teams.ts +0 -67
- package/src/data/models/season.ts +0 -103
- package/src/data/models/serve.ts +0 -113
- package/src/data/models/set.ts +0 -113
- package/src/data/models/spike.ts +0 -113
- package/src/data/models/substitution.ts +0 -98
- package/src/data/models/team.ts +0 -193
- package/src/data/transformers/block.ts +0 -117
- package/src/data/transformers/coach.ts +0 -33
- package/src/data/transformers/country.ts +0 -23
- package/src/data/transformers/court-position.ts +0 -43
- package/src/data/transformers/court-target.ts +0 -58
- package/src/data/transformers/event-type.ts +0 -35
- package/src/data/transformers/formation.ts +0 -16
- package/src/data/transformers/index.ts +0 -27
- package/src/data/transformers/league.ts +0 -26
- package/src/data/transformers/libero-replacement.ts +0 -62
- package/src/data/transformers/match-set-stats.ts +0 -101
- package/src/data/transformers/match-set.ts +0 -59
- package/src/data/transformers/match.ts +0 -48
- package/src/data/transformers/performance-stats.ts +0 -40
- package/src/data/transformers/player.ts +0 -109
- package/src/data/transformers/rally-position.ts +0 -24
- package/src/data/transformers/rally.ts +0 -139
- package/src/data/transformers/reception.ts +0 -98
- package/src/data/transformers/role.ts +0 -31
- package/src/data/transformers/score.ts +0 -43
- package/src/data/transformers/season.ts +0 -42
- package/src/data/transformers/serve.ts +0 -100
- package/src/data/transformers/set.ts +0 -98
- package/src/data/transformers/spike.ts +0 -102
- package/src/data/transformers/substitution.ts +0 -42
- package/src/data/transformers/team.ts +0 -45
- package/src/data/transformers/trait.ts +0 -37
- package/src/index.ts +0 -7
- package/src/routing/events.ts +0 -60
- package/src/routing/index.ts +0 -5
- package/src/routing/league.ts +0 -15
- package/src/routing/match.ts +0 -52
- package/src/routing/player.ts +0 -24
- package/src/routing/team.ts +0 -14
- package/src/service/coach/__stubs__/index.ts +0 -46
- package/src/service/coach/coach.test.ts +0 -10
- package/src/service/coach/coach.ts +0 -30
- package/src/service/coach/formation.test.ts +0 -10
- package/src/service/coach/formation.ts +0 -160
- package/src/service/coach/index.ts +0 -2
- package/src/service/country/__stubs__/index.ts +0 -13
- package/src/service/country/country.test.ts +0 -10
- package/src/service/country/country.ts +0 -23
- package/src/service/country/index.ts +0 -1
- package/src/service/event/__stubs__/index.ts +0 -25
- package/src/service/event/block.test.ts +0 -100
- package/src/service/event/block.ts +0 -69
- package/src/service/event/in-play-event.ts +0 -37
- package/src/service/event/libero-replacement.test.ts +0 -37
- package/src/service/event/libero-replacement.ts +0 -25
- package/src/service/event/rally-event.ts +0 -33
- package/src/service/event/reception.test.ts +0 -50
- package/src/service/event/reception.ts +0 -38
- package/src/service/event/score.test.ts +0 -29
- package/src/service/event/score.ts +0 -22
- package/src/service/event/serve.test.ts +0 -50
- package/src/service/event/serve.ts +0 -39
- package/src/service/event/set.test.ts +0 -50
- package/src/service/event/set.ts +0 -38
- package/src/service/event/spike.test.ts +0 -64
- package/src/service/event/spike.ts +0 -46
- package/src/service/event/substitution.ts +0 -16
- package/src/service/index.ts +0 -17
- package/src/service/league/index.ts +0 -3
- package/src/service/league/league.ts +0 -112
- package/src/service/league/season.ts +0 -41
- package/src/service/league/standing.ts +0 -82
- package/src/service/main.ts +0 -52
- package/src/service/match/__stubs__/index.ts +0 -119
- package/src/service/match/court-position.test.ts +0 -73
- package/src/service/match/court-position.ts +0 -46
- package/src/service/match/court-target.test.ts +0 -39
- package/src/service/match/court-target.ts +0 -30
- package/src/service/match/index.ts +0 -6
- package/src/service/match/match-set.test.ts +0 -174
- package/src/service/match/match-set.ts +0 -140
- package/src/service/match/match-team.test.ts +0 -16
- package/src/service/match/match-team.ts +0 -13
- package/src/service/match/match.test.ts +0 -80
- package/src/service/match/match.ts +0 -63
- package/src/service/match/rally.test.ts +0 -94
- package/src/service/match/rally.ts +0 -79
- package/src/service/player/__stubs__/index.ts +0 -1433
- package/src/service/player/index.ts +0 -5
- package/src/service/player/performance-stats.test.ts +0 -24
- package/src/service/player/performance-stats.ts +0 -47
- package/src/service/player/player.test.ts +0 -51
- package/src/service/player/player.ts +0 -101
- package/src/service/player/role.test.ts +0 -29
- package/src/service/player/role.ts +0 -33
- package/src/service/player/stats.test.ts +0 -23
- package/src/service/player/stats.ts +0 -29
- package/src/service/player/trait.test.ts +0 -10
- package/src/service/player/trait.ts +0 -124
- package/src/service/team/__stubs__/index.ts +0 -290
- package/src/service/team/index.ts +0 -1
- package/src/service/team/team.test.ts +0 -30
- package/src/service/team/team.ts +0 -45
- package/src/service/utils/enum-utils.test.ts +0 -10
- package/src/service/utils/enum-utils.ts +0 -6
- package/src/service/utils/index.ts +0 -4
- package/src/service/utils/object-utils.ts +0 -1
- package/src/service/utils/rng-utils.test.ts +0 -32
- package/src/service/utils/rng-utils.ts +0 -41
- package/src/service/utils/string-utils.test.ts +0 -28
- package/src/service/utils/string-utils.ts +0 -13
- 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
package/src/routing/events.ts
DELETED
|
@@ -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
|
-
}
|
package/src/routing/index.ts
DELETED
package/src/routing/league.ts
DELETED
|
@@ -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
|
-
}
|
package/src/routing/match.ts
DELETED
|
@@ -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
|
-
}
|
package/src/routing/player.ts
DELETED
|
@@ -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
|
-
}
|
package/src/routing/team.ts
DELETED
|
@@ -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
|
-
}
|