volleyballsimtypes 0.0.121 → 0.0.123

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 (131) hide show
  1. package/dist/cjs/src/api/events.d.ts +0 -1
  2. package/dist/cjs/src/data/init-models.d.ts +9 -9
  3. package/dist/cjs/src/data/init-models.js +0 -57
  4. package/dist/cjs/src/data/models/index.d.ts +0 -8
  5. package/dist/cjs/src/data/models/index.js +0 -8
  6. package/dist/cjs/src/data/models/player.d.ts +1 -144
  7. package/dist/cjs/src/data/models/rally.d.ts +3 -96
  8. package/dist/cjs/src/data/models/rally.js +5 -1
  9. package/dist/cjs/src/data/transformers/block.d.ts +2 -6
  10. package/dist/cjs/src/data/transformers/block.js +8 -95
  11. package/dist/cjs/src/data/transformers/index.d.ts +0 -2
  12. package/dist/cjs/src/data/transformers/index.js +0 -2
  13. package/dist/cjs/src/data/transformers/libero-replacement.d.ts +2 -6
  14. package/dist/cjs/src/data/transformers/libero-replacement.js +4 -43
  15. package/dist/cjs/src/data/transformers/rally.js +73 -32
  16. package/dist/cjs/src/data/transformers/reception.d.ts +2 -6
  17. package/dist/cjs/src/data/transformers/reception.js +6 -73
  18. package/dist/cjs/src/data/transformers/serve.d.ts +2 -6
  19. package/dist/cjs/src/data/transformers/serve.js +6 -75
  20. package/dist/cjs/src/data/transformers/set.d.ts +2 -6
  21. package/dist/cjs/src/data/transformers/set.js +6 -73
  22. package/dist/cjs/src/data/transformers/spike.d.ts +2 -6
  23. package/dist/cjs/src/data/transformers/spike.js +7 -78
  24. package/dist/cjs/src/data/transformers/substitution.d.ts +2 -6
  25. package/dist/cjs/src/data/transformers/substitution.js +4 -28
  26. package/dist/cjs/src/service/event/block.d.ts +3 -2
  27. package/dist/cjs/src/service/event/block.js +6 -3
  28. package/dist/cjs/src/service/event/in-play-event.d.ts +2 -2
  29. package/dist/cjs/src/service/event/in-play-event.js +3 -3
  30. package/dist/cjs/src/service/event/libero-replacement.d.ts +3 -2
  31. package/dist/cjs/src/service/event/libero-replacement.js +6 -3
  32. package/dist/cjs/src/service/event/rally-event.d.ts +2 -4
  33. package/dist/cjs/src/service/event/rally-event.js +2 -3
  34. package/dist/cjs/src/service/event/reception.d.ts +2 -1
  35. package/dist/cjs/src/service/event/reception.js +5 -2
  36. package/dist/cjs/src/service/event/serve.d.ts +2 -1
  37. package/dist/cjs/src/service/event/serve.js +6 -9
  38. package/dist/cjs/src/service/event/set.d.ts +2 -1
  39. package/dist/cjs/src/service/event/set.js +5 -2
  40. package/dist/cjs/src/service/event/spike.d.ts +2 -1
  41. package/dist/cjs/src/service/event/spike.js +5 -2
  42. package/dist/cjs/src/service/event/substitution.d.ts +3 -2
  43. package/dist/cjs/src/service/event/substitution.js +6 -3
  44. package/dist/cjs/src/service/player/role.js +2 -2
  45. package/dist/cjs/src/service/player/trait.js +3 -3
  46. package/dist/esm/src/api/events.d.ts +0 -1
  47. package/dist/esm/src/data/init-models.d.ts +9 -9
  48. package/dist/esm/src/data/init-models.js +1 -58
  49. package/dist/esm/src/data/models/index.d.ts +0 -8
  50. package/dist/esm/src/data/models/index.js +0 -8
  51. package/dist/esm/src/data/models/player.d.ts +1 -144
  52. package/dist/esm/src/data/models/rally.d.ts +3 -96
  53. package/dist/esm/src/data/models/rally.js +5 -1
  54. package/dist/esm/src/data/transformers/block.d.ts +2 -6
  55. package/dist/esm/src/data/transformers/block.js +8 -93
  56. package/dist/esm/src/data/transformers/index.d.ts +0 -2
  57. package/dist/esm/src/data/transformers/index.js +0 -2
  58. package/dist/esm/src/data/transformers/libero-replacement.d.ts +2 -6
  59. package/dist/esm/src/data/transformers/libero-replacement.js +4 -41
  60. package/dist/esm/src/data/transformers/rally.js +75 -34
  61. package/dist/esm/src/data/transformers/reception.d.ts +2 -6
  62. package/dist/esm/src/data/transformers/reception.js +6 -71
  63. package/dist/esm/src/data/transformers/serve.d.ts +2 -6
  64. package/dist/esm/src/data/transformers/serve.js +6 -73
  65. package/dist/esm/src/data/transformers/set.d.ts +2 -6
  66. package/dist/esm/src/data/transformers/set.js +6 -71
  67. package/dist/esm/src/data/transformers/spike.d.ts +2 -6
  68. package/dist/esm/src/data/transformers/spike.js +7 -76
  69. package/dist/esm/src/data/transformers/substitution.d.ts +2 -6
  70. package/dist/esm/src/data/transformers/substitution.js +4 -26
  71. package/dist/esm/src/service/event/block.d.ts +3 -2
  72. package/dist/esm/src/service/event/block.js +6 -3
  73. package/dist/esm/src/service/event/in-play-event.d.ts +2 -2
  74. package/dist/esm/src/service/event/in-play-event.js +3 -3
  75. package/dist/esm/src/service/event/libero-replacement.d.ts +3 -2
  76. package/dist/esm/src/service/event/libero-replacement.js +6 -3
  77. package/dist/esm/src/service/event/rally-event.d.ts +2 -4
  78. package/dist/esm/src/service/event/rally-event.js +2 -3
  79. package/dist/esm/src/service/event/reception.d.ts +2 -1
  80. package/dist/esm/src/service/event/reception.js +5 -2
  81. package/dist/esm/src/service/event/serve.d.ts +2 -1
  82. package/dist/esm/src/service/event/serve.js +6 -9
  83. package/dist/esm/src/service/event/set.d.ts +2 -1
  84. package/dist/esm/src/service/event/set.js +5 -2
  85. package/dist/esm/src/service/event/spike.d.ts +2 -1
  86. package/dist/esm/src/service/event/spike.js +5 -2
  87. package/dist/esm/src/service/event/substitution.d.ts +3 -2
  88. package/dist/esm/src/service/event/substitution.js +6 -3
  89. package/dist/esm/src/service/player/role.js +2 -2
  90. package/dist/esm/src/service/player/trait.js +3 -3
  91. package/package.json +2 -1
  92. package/dist/cjs/src/data/models/block.d.ts +0 -56
  93. package/dist/cjs/src/data/models/block.js +0 -86
  94. package/dist/cjs/src/data/models/event.d.ts +0 -31
  95. package/dist/cjs/src/data/models/event.js +0 -50
  96. package/dist/cjs/src/data/models/libero-replacement.d.ts +0 -38
  97. package/dist/cjs/src/data/models/libero-replacement.js +0 -62
  98. package/dist/cjs/src/data/models/reception.d.ts +0 -37
  99. package/dist/cjs/src/data/models/reception.js +0 -62
  100. package/dist/cjs/src/data/models/serve.d.ts +0 -37
  101. package/dist/cjs/src/data/models/serve.js +0 -62
  102. package/dist/cjs/src/data/models/set.d.ts +0 -37
  103. package/dist/cjs/src/data/models/set.js +0 -62
  104. package/dist/cjs/src/data/models/spike.d.ts +0 -37
  105. package/dist/cjs/src/data/models/spike.js +0 -62
  106. package/dist/cjs/src/data/models/substitution.d.ts +0 -35
  107. package/dist/cjs/src/data/models/substitution.js +0 -58
  108. package/dist/cjs/src/data/transformers/court-target.d.ts +0 -5
  109. package/dist/cjs/src/data/transformers/court-target.js +0 -41
  110. package/dist/cjs/src/data/transformers/event-type.d.ts +0 -5
  111. package/dist/cjs/src/data/transformers/event-type.js +0 -29
  112. package/dist/esm/src/data/models/block.d.ts +0 -56
  113. package/dist/esm/src/data/models/block.js +0 -82
  114. package/dist/esm/src/data/models/event.d.ts +0 -31
  115. package/dist/esm/src/data/models/event.js +0 -46
  116. package/dist/esm/src/data/models/libero-replacement.d.ts +0 -38
  117. package/dist/esm/src/data/models/libero-replacement.js +0 -58
  118. package/dist/esm/src/data/models/reception.d.ts +0 -37
  119. package/dist/esm/src/data/models/reception.js +0 -58
  120. package/dist/esm/src/data/models/serve.d.ts +0 -37
  121. package/dist/esm/src/data/models/serve.js +0 -58
  122. package/dist/esm/src/data/models/set.d.ts +0 -37
  123. package/dist/esm/src/data/models/set.js +0 -58
  124. package/dist/esm/src/data/models/spike.d.ts +0 -37
  125. package/dist/esm/src/data/models/spike.js +0 -58
  126. package/dist/esm/src/data/models/substitution.d.ts +0 -35
  127. package/dist/esm/src/data/models/substitution.js +0 -54
  128. package/dist/esm/src/data/transformers/court-target.d.ts +0 -5
  129. package/dist/esm/src/data/transformers/court-target.js +0 -37
  130. package/dist/esm/src/data/transformers/event-type.d.ts +0 -5
  131. package/dist/esm/src/data/transformers/event-type.js +0 -25
@@ -1,7 +1,3 @@
1
- import { LiberoReplacement } from '../../service';
2
- import { LiberoReplacementAttributes, LiberoReplacementModel } from '../models';
3
1
  import { APILiberoReplacement } from '../../api';
4
- declare function transformToAttributes(event: LiberoReplacement, rallyId: string): LiberoReplacementAttributes;
5
- declare function transformToObject(event: LiberoReplacementModel): LiberoReplacement;
6
- declare function transformToAPIObject(event: LiberoReplacementModel): APILiberoReplacement;
7
- export { transformToObject as transformToLiberoReplacement, transformToAPIObject as transformToAPILiberoReplacement, transformToAttributes as transformFromLiberoReplacement };
2
+ declare function transformToAPIObject(event: any): APILiberoReplacement;
3
+ export { transformToAPIObject as transformToAPILiberoReplacement };
@@ -1,47 +1,10 @@
1
- import { LiberoReplacement, LiberoReplacementTypeEnum } from '../../service';
2
- import { transformFromEventType, transformToEventType, transformToPlayer } from '.';
3
- function transformToLiberoReplacementType(type) {
4
- switch (type) {
5
- case LiberoReplacementTypeEnum.LIBERO_IN:
6
- return 'LIBERO_IN';
7
- case LiberoReplacementTypeEnum.LIBERO_OUT:
8
- return 'LIBERO_OUT';
9
- default:
10
- throw new Error('UNKNOWN_ROLE');
11
- }
12
- }
13
- function transformFromLiberoReplacementType(type) {
14
- return LiberoReplacementTypeEnum[type];
15
- }
16
- function transformToAttributes(event, rallyId) {
17
- return {
18
- event_id: event.id,
19
- rally_id: rallyId,
20
- player_id: event.player.id,
21
- order: event.order,
22
- event_type: transformFromEventType(event.eventType),
23
- type: transformToLiberoReplacementType(event.type),
24
- libero: event.libero.id
25
- };
26
- }
27
- function transformToObject(event) {
28
- return new LiberoReplacement({
29
- id: event.event_id,
30
- player: transformToPlayer(event.player),
31
- libero: transformToPlayer(event.Libero),
32
- order: event.order,
33
- eventType: transformToEventType(event.event_type),
34
- type: transformFromLiberoReplacementType(event.type)
35
- });
36
- }
37
1
  function transformToAPIObject(event) {
38
2
  return {
39
- id: event.event_id,
40
- playerId: event.player_id,
3
+ playerId: event.player,
41
4
  liberoId: event.libero,
42
5
  order: event.order,
43
- eventType: transformToEventType(event.event_type),
44
- type: transformFromLiberoReplacementType(event.type)
6
+ eventType: event.eventType,
7
+ type: event.type
45
8
  };
46
9
  }
47
- export { transformToObject as transformToLiberoReplacement, transformToAPIObject as transformToAPILiberoReplacement, transformToAttributes as transformFromLiberoReplacement };
10
+ export { transformToAPIObject as transformToAPILiberoReplacement };
@@ -1,37 +1,52 @@
1
- import { EventTypeEnum, Rally } from '../../service';
2
- import { transformFromBlock, transformFromLiberoReplacement, transformFromReception, transformFromServe, transformFromSet, transformFromSpike, transformFromSubstitution, transformToAPIBlock, transformToAPILiberoReplacement, transformToAPIReception, transformToAPIServe, transformToAPISet, transformToAPISpike, transformToAPISubstitution, transformToBlock, transformToLiberoReplacement, transformToReception, transformToServe, transformToSet, transformToSpike, transformToSubstitution, transformToTeam } from '.';
1
+ import { Rally } from '../../service';
2
+ import { transformToAPIBlock, transformToAPILiberoReplacement, transformToAPIReception, transformToAPIServe, transformToAPISet, transformToAPISpike, transformToAPISubstitution, transformToTeam } from '.';
3
+ import { compressToBase64, decompressFromBase64 } from 'lz-string';
3
4
  function transformToAttributes(rally, setId) {
5
+ const events = `[${rally.events.map(e => e.toString()).join(',')}]`;
4
6
  return {
5
7
  rally_id: rally.id,
6
8
  match_set_id: setId,
7
9
  order: rally.order,
8
10
  serving_team: rally.servingTeam.id,
9
- LiberoReplacements: rally.events.filter(event => event.eventType === EventTypeEnum.LIBERO_REPLACEMENT)
10
- .map(event => transformFromLiberoReplacement(event, rally.id)),
11
- Substitutions: rally.events.filter(event => event.eventType === EventTypeEnum.SUBSTITUTION)
12
- .map(event => transformFromSubstitution(event, rally.id)),
13
- Serves: rally.events.filter(event => event.eventType === EventTypeEnum.SERVE)
14
- .map(event => transformFromServe(event, rally.id)),
15
- Receptions: rally.events.filter(event => event.eventType === EventTypeEnum.RECEPTION)
16
- .map(event => transformFromReception(event, rally.id)),
17
- Sets: rally.events.filter(event => event.eventType === EventTypeEnum.SET)
18
- .map(event => transformFromSet(event, rally.id)),
19
- Spikes: rally.events.filter(event => event.eventType === EventTypeEnum.SPIKE)
20
- .map(event => transformFromSpike(event, rally.id)),
21
- Blocks: rally.events.filter(event => event.eventType === EventTypeEnum.BLOCK)
22
- .map(event => transformFromBlock(event, rally.id))
11
+ events: compressToBase64(events)
23
12
  };
24
13
  }
25
14
  function transformToObject(model) {
26
- const liberoReplacements = model.LiberoReplacements != null ?
27
- model.LiberoReplacements.map(transformToLiberoReplacement) : [];
28
- const substitutions = model.Substitutions != null ?
29
- model.Substitutions.map(transformToSubstitution) : [];
30
- const serves = model.Serves != null ? model.Serves.map(transformToServe) : [];
31
- const receptions = model.Receptions != null ? model.Receptions.map(transformToReception) : [];
32
- const sets = model.Sets != null ? model.Sets.map(transformToSet) : [];
33
- const spikes = model.Spikes != null ? model.Spikes.map(transformToSpike) : [];
34
- const blocks = model.Blocks != null ? model.Blocks.map(transformToBlock) : [];
15
+ const decompressed = JSON.parse(decompressFromBase64(model.events));
16
+ const liberoReplacements = [];
17
+ const substitutions = [];
18
+ const serves = [];
19
+ const receptions = [];
20
+ const sets = [];
21
+ const spikes = [];
22
+ const blocks = [];
23
+ decompressed.forEach(event => {
24
+ switch (event.event_type) {
25
+ case 0:
26
+ liberoReplacements.push(event);
27
+ break;
28
+ case 1:
29
+ substitutions.push(event);
30
+ break;
31
+ case 2:
32
+ serves.push(event);
33
+ break;
34
+ case 3:
35
+ receptions.push(event);
36
+ break;
37
+ case 4:
38
+ sets.push(event);
39
+ break;
40
+ case 5:
41
+ spikes.push(event);
42
+ break;
43
+ case 6:
44
+ blocks.push(event);
45
+ break;
46
+ default:
47
+ throw new Error('UNKNOWN_EVENT');
48
+ }
49
+ });
35
50
  const events = [...liberoReplacements, ...substitutions, ...serves, ...receptions, ...sets, ...spikes, ...blocks]
36
51
  .sort((e1, e2) => e1.order - e2.order);
37
52
  return new Rally({
@@ -42,15 +57,41 @@ function transformToObject(model) {
42
57
  });
43
58
  }
44
59
  function transformToAPIObject(model) {
45
- const liberoReplacements = model.LiberoReplacements != null ?
46
- model.LiberoReplacements.map(transformToAPILiberoReplacement) : [];
47
- const substitutions = model.Substitutions != null ?
48
- model.Substitutions.map(transformToAPISubstitution) : [];
49
- const serves = model.Serves != null ? model.Serves.map(transformToAPIServe) : [];
50
- const receptions = model.Receptions != null ? model.Receptions.map(transformToAPIReception) : [];
51
- const sets = model.Sets != null ? model.Sets.map(transformToAPISet) : [];
52
- const spikes = model.Spikes != null ? model.Spikes.map(transformToAPISpike) : [];
53
- const blocks = model.Blocks != null ? model.Blocks.map(transformToAPIBlock) : [];
60
+ const decompressed = JSON.parse(decompressFromBase64(model.events));
61
+ const liberoReplacements = [];
62
+ const substitutions = [];
63
+ const serves = [];
64
+ const receptions = [];
65
+ const sets = [];
66
+ const spikes = [];
67
+ const blocks = [];
68
+ decompressed.forEach(event => {
69
+ switch (event.event_type) {
70
+ case 0:
71
+ liberoReplacements.push(transformToAPILiberoReplacement(event));
72
+ break;
73
+ case 1:
74
+ substitutions.push(transformToAPISubstitution(event));
75
+ break;
76
+ case 2:
77
+ serves.push(transformToAPIServe(event));
78
+ break;
79
+ case 3:
80
+ receptions.push(transformToAPIReception(event));
81
+ break;
82
+ case 4:
83
+ sets.push(transformToAPISet(event));
84
+ break;
85
+ case 5:
86
+ spikes.push(transformToAPISpike(event));
87
+ break;
88
+ case 6:
89
+ blocks.push(transformToAPIBlock(event));
90
+ break;
91
+ default:
92
+ throw new Error('UNKNOWN_EVENT');
93
+ }
94
+ });
54
95
  const events = [...liberoReplacements, ...substitutions, ...serves, ...receptions, ...sets, ...spikes, ...blocks]
55
96
  .sort((e1, e2) => e1.order - e2.order);
56
97
  return {
@@ -1,7 +1,3 @@
1
- import { Reception } from '../../service';
2
- import { ReceptionAttributes, ReceptionModel } from '../models';
3
1
  import { APIReception } from '../../api';
4
- declare function transformToAttributes(event: Reception, rallyId: string): ReceptionAttributes;
5
- declare function transformToObject(reception: ReceptionModel): Reception;
6
- declare function transformToAPIObject(event: ReceptionModel): APIReception;
7
- export { transformToObject as transformToReception, transformToAPIObject as transformToAPIReception, transformToAttributes as transformFromReception };
2
+ declare function transformToAPIObject(event: any): APIReception;
3
+ export { transformToAPIObject as transformToAPIReception };
@@ -1,76 +1,11 @@
1
- import { Reception, ReceptionFailureEnum, ReceptionTypeEnum } from '../../service';
2
- import { transformFromCourtTarget, transformFromEventType, transformToCourtTarget, transformToEventType, transformToPlayer } from '.';
3
- function transformToReceptionFailure(failure) {
4
- switch (failure) {
5
- case ReceptionFailureEnum.NO_FAILURE:
6
- return 'NO_FAILURE';
7
- case ReceptionFailureEnum.FAULT:
8
- return 'FAULT';
9
- case ReceptionFailureEnum.MISS:
10
- return 'MISS';
11
- case ReceptionFailureEnum.OUT_OF_BOUNDS:
12
- return 'OUT_OF_BOUNDS';
13
- case ReceptionFailureEnum.BAD_PASS:
14
- return 'BAD_PASS';
15
- default:
16
- throw new Error('UNKNOWN_ROLE');
17
- }
18
- }
19
- function transformFromReceptionFailure(failure) {
20
- return ReceptionFailureEnum[failure];
21
- }
22
- function transformToReceptionType(type) {
23
- switch (type) {
24
- case ReceptionTypeEnum.DIG:
25
- return 'DIG';
26
- case ReceptionTypeEnum.OVERHAND:
27
- return 'OVERHAND';
28
- case ReceptionTypeEnum.ONE_HAND:
29
- return 'ONE_HAND';
30
- case ReceptionTypeEnum.OTHER_BODY_PART:
31
- return 'OTHER_BODY_PART';
32
- default:
33
- throw new Error('UNKNOWN_ROLE');
34
- }
35
- }
36
- function transformFromReceptionType(type) {
37
- return ReceptionTypeEnum[type];
38
- }
39
- function transformToAttributes(event, rallyId) {
40
- return {
41
- event_id: event.id,
42
- player_id: event.player.id,
43
- rally_id: rallyId,
44
- order: event.order,
45
- target: transformFromCourtTarget(event.target),
46
- failure: transformToReceptionFailure(event.failure),
47
- type: transformToReceptionType(event.type),
48
- event_type: transformFromEventType(event.eventType),
49
- };
50
- }
51
- function transformToObject(reception) {
52
- return new Reception({
53
- id: reception.event_id,
54
- eventType: transformToEventType(reception.event_type),
55
- failure: transformFromReceptionFailure(reception.failure),
56
- type: transformFromReceptionType(reception.type),
57
- player: transformToPlayer(reception.player),
58
- target: transformToCourtTarget(reception.target),
59
- order: reception.order,
60
- modifier: 1,
61
- score: 1,
62
- activeTraits: []
63
- });
64
- }
65
1
  function transformToAPIObject(event) {
66
2
  return {
67
- id: event.event_id,
68
- eventType: transformToEventType(event.event_type),
69
- failure: transformFromReceptionFailure(event.failure),
70
- type: transformFromReceptionType(event.type),
71
- playerId: event.player_id,
72
- target: transformToCourtTarget(event.target),
3
+ eventType: event.eventType,
4
+ failure: event.failure,
5
+ type: event.type,
6
+ playerId: event.player,
7
+ target: event.target,
73
8
  order: event.order
74
9
  };
75
10
  }
76
- export { transformToObject as transformToReception, transformToAPIObject as transformToAPIReception, transformToAttributes as transformFromReception };
11
+ export { transformToAPIObject as transformToAPIReception };
@@ -1,7 +1,3 @@
1
- import { Serve } from '../../service';
2
- import { ServeAttributes, ServeModel } from '../models';
3
1
  import { APIServe } from '../../api';
4
- declare function transformToAttributes(event: Serve, rallyId: string): ServeAttributes;
5
- declare function transformToObject(serve: ServeModel): Serve;
6
- declare function transformToAPIObject(event: ServeModel): APIServe;
7
- export { transformToObject as transformToServe, transformToAPIObject as transformToAPIServe, transformToAttributes as transformFromServe };
2
+ declare function transformToAPIObject(event: any): APIServe;
3
+ export { transformToAPIObject as transformToAPIServe };
@@ -1,78 +1,11 @@
1
- import { Serve, ServeFailureEnum, ServeTypeEnum } from '../../service';
2
- import { transformFromCourtTarget, transformFromEventType, transformToCourtTarget, transformToEventType, transformToPlayer } from '.';
3
- function transformToServeFailure(failure) {
4
- switch (failure) {
5
- case ServeFailureEnum.NO_FAILURE:
6
- return 'NO_FAILURE';
7
- case ServeFailureEnum.FAULT:
8
- return 'FAULT';
9
- case ServeFailureEnum.MISS:
10
- return 'MISS';
11
- case ServeFailureEnum.OUT_OF_BOUNDS:
12
- return 'OUT_OF_BOUNDS';
13
- case ServeFailureEnum.NET:
14
- return 'NET';
15
- default:
16
- throw new Error('UNKNOWN_ROLE');
17
- }
18
- }
19
- function transformFromServeFailure(failure) {
20
- return ServeFailureEnum[failure];
21
- }
22
- function transformToServeType(type) {
23
- switch (type) {
24
- case ServeTypeEnum.UNDERHAND:
25
- return 'UNDERHAND';
26
- case ServeTypeEnum.OVERHAND_TOPSPIN:
27
- return 'OVERHAND_TOPSPIN';
28
- case ServeTypeEnum.OVERHAND_FLOAT:
29
- return 'OVERHAND_FLOAT';
30
- case ServeTypeEnum.JUMP_TOPSPIN:
31
- return 'JUMP_TOPSPIN';
32
- case ServeTypeEnum.JUMP_FLOAT:
33
- return 'JUMP_FLOAT';
34
- default:
35
- throw new Error('UNKNOWN_ROLE');
36
- }
37
- }
38
- function transformFromServeType(type) {
39
- return ServeTypeEnum[type];
40
- }
41
- function transformToAttributes(event, rallyId) {
42
- return {
43
- event_id: event.id,
44
- player_id: event.player.id,
45
- rally_id: rallyId,
46
- order: event.order,
47
- target: transformFromCourtTarget(event.target),
48
- failure: transformToServeFailure(event.failure),
49
- type: transformToServeType(event.type),
50
- event_type: transformFromEventType(event.eventType),
51
- };
52
- }
53
- function transformToObject(serve) {
54
- return new Serve({
55
- id: serve.event_id,
56
- eventType: transformToEventType(serve.event_type),
57
- failure: transformFromServeFailure(serve.failure),
58
- type: transformFromServeType(serve.type),
59
- player: transformToPlayer(serve.player),
60
- target: transformToCourtTarget(serve.target),
61
- order: serve.order,
62
- modifier: 1,
63
- score: 1,
64
- activeTraits: []
65
- });
66
- }
67
1
  function transformToAPIObject(event) {
68
2
  return {
69
- id: event.event_id,
70
- eventType: transformToEventType(event.event_type),
71
- failure: transformFromServeFailure(event.failure),
72
- type: transformFromServeType(event.type),
73
- playerId: event.player_id,
74
- target: transformToCourtTarget(event.target),
3
+ eventType: event.eventType,
4
+ failure: event.failure,
5
+ type: event.type,
6
+ playerId: event.player,
7
+ target: event.target,
75
8
  order: event.order
76
9
  };
77
10
  }
78
- export { transformToObject as transformToServe, transformToAPIObject as transformToAPIServe, transformToAttributes as transformFromServe };
11
+ export { transformToAPIObject as transformToAPIServe };
@@ -1,7 +1,3 @@
1
- import { Set } from '../../service';
2
- import { SetAttributes, SetModel } from '../models';
3
1
  import { APISet } from '../../api';
4
- declare function transformToAttributes(event: Set, rallyId: string): SetAttributes;
5
- declare function transformToObject(set: SetModel): Set;
6
- declare function transformToAPIObject(event: SetModel): APISet;
7
- export { transformToObject as transformToSet, transformToAPIObject as transformToAPISet, transformToAttributes as transformFromSet };
2
+ declare function transformToAPIObject(event: any): APISet;
3
+ export { transformToAPIObject as transformToAPISet };
@@ -1,76 +1,11 @@
1
- import { Set, SetFailureEnum, SetTypeEnum } from '../../service';
2
- import { transformFromCourtTarget, transformFromEventType, transformToCourtTarget, transformToEventType, transformToPlayer } from '.';
3
- function transformToSetFailure(failure) {
4
- switch (failure) {
5
- case SetFailureEnum.NO_FAILURE:
6
- return 'NO_FAILURE';
7
- case SetFailureEnum.FAULT:
8
- return 'FAULT';
9
- case SetFailureEnum.MISS:
10
- return 'MISS';
11
- case SetFailureEnum.OUT_OF_BOUNDS:
12
- return 'OUT_OF_BOUNDS';
13
- case SetFailureEnum.BAD_PASS:
14
- return 'BAD_PASS';
15
- default:
16
- throw new Error('UNKNOWN_ROLE');
17
- }
18
- }
19
- function transformFromSetFailure(failure) {
20
- return SetFailureEnum[failure];
21
- }
22
- function transformToSetType(type) {
23
- switch (type) {
24
- case SetTypeEnum.OVERHAND:
25
- return 'OVERHAND';
26
- case SetTypeEnum.UNDERHAND:
27
- return 'UNDERHAND';
28
- case SetTypeEnum.SPIKE:
29
- return 'SPIKE';
30
- case SetTypeEnum.DUMP:
31
- return 'DUMP';
32
- default:
33
- throw new Error('UNKNOWN_ROLE');
34
- }
35
- }
36
- function transformFromSetType(type) {
37
- return SetTypeEnum[type];
38
- }
39
- function transformToAttributes(event, rallyId) {
40
- return {
41
- event_id: event.id,
42
- player_id: event.player.id,
43
- rally_id: rallyId,
44
- order: event.order,
45
- target: transformFromCourtTarget(event.target),
46
- failure: transformToSetFailure(event.failure),
47
- type: transformToSetType(event.type),
48
- event_type: transformFromEventType(event.eventType)
49
- };
50
- }
51
- function transformToObject(set) {
52
- return new Set({
53
- id: set.event_id,
54
- eventType: transformToEventType(set.event_type),
55
- failure: transformFromSetFailure(set.failure),
56
- type: transformFromSetType(set.type),
57
- player: transformToPlayer(set.player),
58
- target: transformToCourtTarget(set.target),
59
- order: set.order,
60
- modifier: 1,
61
- score: 1,
62
- activeTraits: []
63
- });
64
- }
65
1
  function transformToAPIObject(event) {
66
2
  return {
67
- id: event.event_id,
68
- eventType: transformToEventType(event.event_type),
69
- failure: transformFromSetFailure(event.failure),
70
- type: transformFromSetType(event.type),
71
- playerId: event.player_id,
72
- target: transformToCourtTarget(event.target),
3
+ eventType: event.eventType,
4
+ failure: event.failure,
5
+ type: event.type,
6
+ playerId: event.player,
7
+ target: event.target,
73
8
  order: event.order
74
9
  };
75
10
  }
76
- export { transformToObject as transformToSet, transformToAPIObject as transformToAPISet, transformToAttributes as transformFromSet };
11
+ export { transformToAPIObject as transformToAPISet };
@@ -1,7 +1,3 @@
1
- import { Spike } from '../../service';
2
- import { SpikeAttributes, SpikeModel } from '../models';
3
1
  import { APISpike } from '../../api';
4
- declare function transformToAttributes(event: Spike, rallyId: string): SpikeAttributes;
5
- declare function transformToObject(spike: SpikeModel): Spike;
6
- declare function transformToAPIObject(event: SpikeModel): APISpike;
7
- export { transformToObject as transformToSpike, transformToAPIObject as transformToAPISpike, transformToAttributes as transformFromSpike };
2
+ declare function transformToAPIObject(event: any): APISpike;
3
+ export { transformToAPIObject as transformToAPISpike };
@@ -1,80 +1,11 @@
1
- import { Spike, SpikeFailureEnum, SpikeTypeEnum } from '../../service';
2
- import { transformFromCourtTarget, transformFromEventType, transformToCourtTarget, transformToEventType, transformToPlayer } from '.';
3
- function transformToSpikeFailure(failure) {
4
- switch (failure) {
5
- case SpikeFailureEnum.NO_FAILURE:
6
- return 'NO_FAILURE';
7
- case SpikeFailureEnum.FAULT:
8
- return 'FAULT';
9
- case SpikeFailureEnum.MISS:
10
- return 'MISS';
11
- case SpikeFailureEnum.OUT_OF_BOUNDS:
12
- return 'OUT_OF_BOUNDS';
13
- case SpikeFailureEnum.NET:
14
- return 'NET';
15
- default:
16
- throw new Error('UNKNOWN_ROLE');
17
- }
18
- }
19
- function transformFromSpikeFailure(failure) {
20
- return SpikeFailureEnum[failure];
21
- }
22
- function transformToSpikeType(type) {
23
- switch (type) {
24
- case SpikeTypeEnum.CROSS_SHOT:
25
- return 'CROSS_SHOT';
26
- case SpikeTypeEnum.LINE_SHOT:
27
- return 'LINE_SHOT';
28
- case SpikeTypeEnum.TOOL_SHOT:
29
- return 'TOOL_SHOT';
30
- case SpikeTypeEnum.TIP:
31
- return 'TIP';
32
- case SpikeTypeEnum.DOWN_BALL:
33
- return 'DOWN_BALL';
34
- case SpikeTypeEnum.OVERHAND:
35
- return 'OVERHAND';
36
- default:
37
- throw new Error('UNKNOWN_ROLE');
38
- }
39
- }
40
- function transformFromSpikeType(type) {
41
- return SpikeTypeEnum[type];
42
- }
43
- function transformToAttributes(event, rallyId) {
44
- return {
45
- event_id: event.id,
46
- player_id: event.player.id,
47
- rally_id: rallyId,
48
- order: event.order,
49
- target: transformFromCourtTarget(event.target),
50
- failure: transformToSpikeFailure(event.failure),
51
- type: transformToSpikeType(event.type),
52
- event_type: transformFromEventType(event.eventType)
53
- };
54
- }
55
- function transformToObject(spike) {
56
- return new Spike({
57
- id: spike.event_id,
58
- eventType: transformToEventType(spike.event_type),
59
- failure: transformFromSpikeFailure(spike.failure),
60
- type: transformFromSpikeType(spike.type),
61
- player: transformToPlayer(spike.player),
62
- target: transformToCourtTarget(spike.target),
63
- order: spike.order,
64
- modifier: 1,
65
- score: 1,
66
- activeTraits: []
67
- });
68
- }
69
1
  function transformToAPIObject(event) {
70
2
  return {
71
- id: event.event_id,
72
- eventType: transformToEventType(event.event_type),
73
- failure: transformFromSpikeFailure(event.failure),
74
- type: transformFromSpikeType(event.type),
75
- playerId: event.player_id,
76
- target: transformToCourtTarget(event.target),
77
- order: event.order,
3
+ eventType: event.eventType,
4
+ failure: event.failure,
5
+ type: event.type,
6
+ playerId: event.player,
7
+ target: event.target,
8
+ order: event.order
78
9
  };
79
10
  }
80
- export { transformToObject as transformToSpike, transformToAPIObject as transformToAPISpike, transformToAttributes as transformFromSpike };
11
+ export { transformToAPIObject as transformToAPISpike };
@@ -1,7 +1,3 @@
1
- import { Substitution } from '../../service';
2
- import { SubstitutionAttributes, SubstitutionModel } from '../models';
3
1
  import { APISubstitution } from '../../api';
4
- declare function transformToAttributes(event: Substitution, rallyId: string): SubstitutionAttributes;
5
- declare function transformToObject(event: SubstitutionModel): Substitution;
6
- declare function transformToAPIObject(event: SubstitutionModel): APISubstitution;
7
- export { transformToObject as transformToSubstitution, transformToAPIObject as transformToAPISubstitution, transformToAttributes as transformFromSubstitution };
2
+ declare function transformToAPIObject(event: any): APISubstitution;
3
+ export { transformToAPIObject as transformToAPISubstitution };
@@ -1,31 +1,9 @@
1
- import { Substitution } from '../../service';
2
- import { transformFromEventType, transformToEventType, transformToPlayer } from '.';
3
- function transformToAttributes(event, rallyId) {
4
- return {
5
- player_id: event.player.id,
6
- event_id: event.id,
7
- order: event.order,
8
- event_type: transformFromEventType(event.eventType),
9
- player_out: event.playerOut.id,
10
- rally_id: rallyId
11
- };
12
- }
13
- function transformToObject(event) {
14
- return new Substitution({
15
- id: event.event_id,
16
- player: transformToPlayer(event.player),
17
- playerOut: transformToPlayer(event.playerOut),
18
- order: event.order,
19
- eventType: transformToEventType(event.event_type)
20
- });
21
- }
22
1
  function transformToAPIObject(event) {
23
2
  return {
24
- id: event.event_id,
25
- eventType: transformToEventType(event.event_type),
26
- playerId: event.player_id,
3
+ eventType: event.eventType,
4
+ playerId: event.player,
27
5
  order: event.order,
28
- playerOutId: event.player_out
6
+ playerOutId: event.playerOut
29
7
  };
30
8
  }
31
- export { transformToObject as transformToSubstitution, transformToAPIObject as transformToAPISubstitution, transformToAttributes as transformFromSubstitution };
9
+ export { transformToAPIObject as transformToAPISubstitution };
@@ -22,8 +22,9 @@ interface BlockOpts extends InPlayEventOpts {
22
22
  export declare class Block extends InPlayEvent {
23
23
  readonly failure: BlockFailureEnum;
24
24
  readonly type: BlockTypeEnum;
25
- readonly blockers: Player[];
26
- constructor({ id, order, score, player, target, failure, type, modifier, eventType, blockers, activeTraits }: BlockOpts);
25
+ readonly blockers: string[];
26
+ constructor({ order, score, player, target, failure, type, modifier, eventType, blockers, activeTraits }: BlockOpts);
27
27
  static getScore(blockers: Player[], modifier: number, activeTraits: Trait[]): number;
28
+ protected toString(): string;
28
29
  }
29
30
  export {};
@@ -17,11 +17,11 @@ export var BlockTypeEnum;
17
17
  BlockTypeEnum[BlockTypeEnum["TRIPLE"] = 3] = "TRIPLE";
18
18
  })(BlockTypeEnum || (BlockTypeEnum = {}));
19
19
  export class Block extends InPlayEvent {
20
- constructor({ id, order, score, player, target, failure, type, modifier, eventType, blockers, activeTraits }) {
21
- super({ id, order, score, player, target, modifier, eventType, activeTraits });
20
+ constructor({ order, score, player, target, failure, type, modifier, eventType, blockers, activeTraits }) {
21
+ super({ order, score, player, target, modifier, eventType, activeTraits });
22
22
  this.type = type;
23
23
  this.failure = failure;
24
- this.blockers = blockers;
24
+ this.blockers = blockers.map(b => b.id);
25
25
  }
26
26
  static getScore(blockers, modifier, activeTraits) {
27
27
  const type = blockers.length;
@@ -58,4 +58,7 @@ export class Block extends InPlayEvent {
58
58
  }
59
59
  return score;
60
60
  }
61
+ toString() {
62
+ return `{order:${this.order},score:${this.order},player:${this.player},target:${this.target},failure:${this.failure},type:${this.type},modifier:${this.modifier},eventType:${this.eventType},blockers:[${this.blockers.join(',')}],activeTraits:[${this.activeTraits.join(',')}]}`;
63
+ }
61
64
  }