volleyballsimtypes 0.0.175 → 0.0.177

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 (55) hide show
  1. package/dist/cjs/src/data/transformers/events.d.ts +8 -0
  2. package/dist/cjs/src/data/transformers/events.js +75 -0
  3. package/dist/cjs/src/data/transformers/rally.js +31 -1
  4. package/dist/cjs/src/service/event/block.d.ts +36 -0
  5. package/dist/cjs/src/service/event/block.js +37 -0
  6. package/dist/cjs/src/service/event/event-types.d.ts +7 -0
  7. package/dist/cjs/src/service/event/event-types.js +2 -0
  8. package/dist/cjs/src/service/event/in-play-event.d.ts +17 -0
  9. package/dist/cjs/src/service/event/in-play-event.js +21 -0
  10. package/dist/cjs/src/service/event/index.d.ts +9 -1
  11. package/dist/cjs/src/service/event/index.js +9 -1
  12. package/dist/cjs/src/service/event/libero-replacement.d.ts +18 -0
  13. package/dist/cjs/src/service/event/libero-replacement.js +25 -0
  14. package/dist/cjs/src/service/event/rally-event.d.ts +13 -4
  15. package/dist/cjs/src/service/event/rally-event.js +13 -3
  16. package/dist/cjs/src/service/event/reception.d.ts +33 -0
  17. package/dist/cjs/src/service/event/reception.js +34 -0
  18. package/dist/cjs/src/service/event/serve.d.ts +33 -0
  19. package/dist/cjs/src/service/event/serve.js +34 -0
  20. package/dist/cjs/src/service/event/set.d.ts +31 -0
  21. package/dist/cjs/src/service/event/set.js +32 -0
  22. package/dist/cjs/src/service/event/spike.d.ts +35 -0
  23. package/dist/cjs/src/service/event/spike.js +36 -0
  24. package/dist/cjs/src/service/event/substitution.d.ts +11 -0
  25. package/dist/cjs/src/service/event/substitution.js +18 -0
  26. package/dist/esm/src/data/transformers/events.d.ts +8 -0
  27. package/dist/esm/src/data/transformers/events.js +65 -0
  28. package/dist/esm/src/data/transformers/rally.js +31 -1
  29. package/dist/esm/src/service/event/block.d.ts +36 -0
  30. package/dist/esm/src/service/event/block.js +33 -0
  31. package/dist/esm/src/service/event/event-types.d.ts +7 -0
  32. package/dist/esm/src/service/event/event-types.js +1 -0
  33. package/dist/esm/src/service/event/in-play-event.d.ts +17 -0
  34. package/dist/esm/src/service/event/in-play-event.js +17 -0
  35. package/dist/esm/src/service/event/index.d.ts +9 -1
  36. package/dist/esm/src/service/event/index.js +9 -1
  37. package/dist/esm/src/service/event/libero-replacement.d.ts +18 -0
  38. package/dist/esm/src/service/event/libero-replacement.js +21 -0
  39. package/dist/esm/src/service/event/rally-event.d.ts +13 -4
  40. package/dist/esm/src/service/event/rally-event.js +12 -2
  41. package/dist/esm/src/service/event/reception.d.ts +33 -0
  42. package/dist/esm/src/service/event/reception.js +30 -0
  43. package/dist/esm/src/service/event/serve.d.ts +33 -0
  44. package/dist/esm/src/service/event/serve.js +30 -0
  45. package/dist/esm/src/service/event/set.d.ts +31 -0
  46. package/dist/esm/src/service/event/set.js +28 -0
  47. package/dist/esm/src/service/event/spike.d.ts +35 -0
  48. package/dist/esm/src/service/event/spike.js +32 -0
  49. package/dist/esm/src/service/event/substitution.d.ts +11 -0
  50. package/dist/esm/src/service/event/substitution.js +14 -0
  51. package/package.json +1 -1
  52. package/dist/cjs/src/service/event/events.d.ts +0 -93
  53. package/dist/cjs/src/service/event/events.js +0 -94
  54. package/dist/esm/src/service/event/events.d.ts +0 -93
  55. package/dist/esm/src/service/event/events.js +0 -91
@@ -0,0 +1,8 @@
1
+ import { Block, LiberoReplacement, Reception, Serve, Set, Spike, Substitution } from '../../service';
2
+ export declare function transformToBlock(event: any): Block;
3
+ export declare function transformToLiberoReplacement(event: any): LiberoReplacement;
4
+ export declare function transformToReception(event: any): Reception;
5
+ export declare function transformToServe(event: any): Serve;
6
+ export declare function transformToSet(event: any): Set;
7
+ export declare function transformToSubstitution(event: any): Substitution;
8
+ export declare function transformToSpike(event: any): Spike;
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.transformToSpike = exports.transformToSubstitution = exports.transformToSet = exports.transformToServe = exports.transformToReception = exports.transformToLiberoReplacement = exports.transformToBlock = void 0;
4
+ const service_1 = require("../../service");
5
+ function transformToBlock(event) {
6
+ return new service_1.Block({
7
+ failure: event.failure,
8
+ type: event.type,
9
+ playerId: event.playerId,
10
+ target: event.target,
11
+ blockers: event.blockers,
12
+ score: event.score,
13
+ activeTraits: event.activeTraits
14
+ });
15
+ }
16
+ exports.transformToBlock = transformToBlock;
17
+ function transformToLiberoReplacement(event) {
18
+ return new service_1.LiberoReplacement({
19
+ playerId: event.playerId,
20
+ libero: event.libero,
21
+ type: event.type
22
+ });
23
+ }
24
+ exports.transformToLiberoReplacement = transformToLiberoReplacement;
25
+ function transformToReception(event) {
26
+ return new service_1.Reception({
27
+ failure: event.failure,
28
+ type: event.type,
29
+ playerId: event.playerId,
30
+ target: event.target,
31
+ score: event.score,
32
+ activeTraits: event.activeTraits
33
+ });
34
+ }
35
+ exports.transformToReception = transformToReception;
36
+ function transformToServe(event) {
37
+ return new service_1.Serve({
38
+ failure: event.failure,
39
+ type: event.type,
40
+ playerId: event.playerId,
41
+ target: event.target,
42
+ score: event.score,
43
+ activeTraits: event.activeTraits
44
+ });
45
+ }
46
+ exports.transformToServe = transformToServe;
47
+ function transformToSet(event) {
48
+ return new service_1.Set({
49
+ failure: event.failure,
50
+ type: event.type,
51
+ playerId: event.playerId,
52
+ target: event.target,
53
+ score: event.score,
54
+ activeTraits: event.activeTraits
55
+ });
56
+ }
57
+ exports.transformToSet = transformToSet;
58
+ function transformToSubstitution(event) {
59
+ return new service_1.Substitution({
60
+ playerId: event.playerId,
61
+ playerOut: event.playerIdOut
62
+ });
63
+ }
64
+ exports.transformToSubstitution = transformToSubstitution;
65
+ function transformToSpike(event) {
66
+ return new service_1.Spike({
67
+ failure: event.failure,
68
+ type: event.type,
69
+ playerId: event.playerId,
70
+ target: event.target,
71
+ score: event.score,
72
+ activeTraits: event.activeTraits
73
+ });
74
+ }
75
+ exports.transformToSpike = transformToSpike;
@@ -4,6 +4,7 @@ exports.transformFromRally = exports.transformToRally = void 0;
4
4
  const service_1 = require("../../service");
5
5
  const lz_string_1 = require("lz-string");
6
6
  const team_1 = require("./team");
7
+ const events_1 = require("./events");
7
8
  function transformToAttributes(rally, setId) {
8
9
  const events = `[${rally.events.map((e) => e.toString()).join(',')}]`;
9
10
  return {
@@ -16,7 +17,36 @@ function transformToAttributes(rally, setId) {
16
17
  }
17
18
  exports.transformFromRally = transformToAttributes;
18
19
  function transformToObject(model) {
19
- const events = JSON.parse((0, lz_string_1.decompressFromBase64)(model.events));
20
+ const decompressed = (0, lz_string_1.decompressFromBase64)(model.events);
21
+ const parsed = JSON.parse(decompressed);
22
+ const events = [];
23
+ parsed.forEach(event => {
24
+ switch (event.eventType) {
25
+ case 0:
26
+ events.push((0, events_1.transformToLiberoReplacement)(event));
27
+ break;
28
+ case 1:
29
+ events.push((0, events_1.transformToSubstitution)(event));
30
+ break;
31
+ case 2:
32
+ events.push((0, events_1.transformToServe)(event));
33
+ break;
34
+ case 3:
35
+ events.push((0, events_1.transformToReception)(event));
36
+ break;
37
+ case 4:
38
+ events.push((0, events_1.transformToSet)(event));
39
+ break;
40
+ case 5:
41
+ events.push((0, events_1.transformToSpike)(event));
42
+ break;
43
+ case 6:
44
+ events.push((0, events_1.transformToBlock)(event));
45
+ break;
46
+ default:
47
+ throw new Error('UNKNOWN_EVENT');
48
+ }
49
+ });
20
50
  return new service_1.Rally({
21
51
  id: model.rally_id,
22
52
  order: model.order,
@@ -0,0 +1,36 @@
1
+ import { InPlayEvent } from './in-play-event';
2
+ import { CourtTarget } from '../match';
3
+ import { Trait } from '../player';
4
+ export declare enum BlockFailureEnum {
5
+ NO_FAILURE = 0,
6
+ MISS = 1,
7
+ FAULT = 2,
8
+ OUT_OF_BOUNDS = 3,
9
+ WIPE = 4,
10
+ TOOL = 5
11
+ }
12
+ export type BlockFailure = BlockFailureEnum.NO_FAILURE | BlockFailureEnum.MISS | BlockFailureEnum.FAULT | BlockFailureEnum.OUT_OF_BOUNDS | BlockFailureEnum.WIPE | BlockFailureEnum.TOOL;
13
+ export declare enum BlockTypeEnum {
14
+ NO_BLOCKER = 0,
15
+ SINGLE = 1,
16
+ DOUBLE = 2,
17
+ TRIPLE = 3
18
+ }
19
+ export type BlockType = BlockTypeEnum.NO_BLOCKER | BlockTypeEnum.SINGLE | BlockTypeEnum.DOUBLE | BlockTypeEnum.TRIPLE;
20
+ interface BlockOpts {
21
+ readonly type: BlockType;
22
+ readonly failure: BlockFailure;
23
+ readonly blockers: string[];
24
+ readonly target: CourtTarget;
25
+ readonly score: number;
26
+ readonly activeTraits: Trait[];
27
+ readonly playerId: string;
28
+ }
29
+ export declare class Block extends InPlayEvent<BlockFailure, BlockType> {
30
+ readonly failure: BlockFailure;
31
+ readonly type: BlockType;
32
+ readonly blockers: string[];
33
+ constructor({ score, playerId, target, failure, type, blockers, activeTraits }: BlockOpts);
34
+ toString(): string;
35
+ }
36
+ export {};
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Block = exports.BlockTypeEnum = exports.BlockFailureEnum = void 0;
4
+ const in_play_event_1 = require("./in-play-event");
5
+ const rally_event_1 = require("./rally-event");
6
+ var BlockFailureEnum;
7
+ (function (BlockFailureEnum) {
8
+ BlockFailureEnum[BlockFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
9
+ BlockFailureEnum[BlockFailureEnum["MISS"] = 1] = "MISS";
10
+ BlockFailureEnum[BlockFailureEnum["FAULT"] = 2] = "FAULT";
11
+ BlockFailureEnum[BlockFailureEnum["OUT_OF_BOUNDS"] = 3] = "OUT_OF_BOUNDS";
12
+ BlockFailureEnum[BlockFailureEnum["WIPE"] = 4] = "WIPE";
13
+ BlockFailureEnum[BlockFailureEnum["TOOL"] = 5] = "TOOL";
14
+ })(BlockFailureEnum = exports.BlockFailureEnum || (exports.BlockFailureEnum = {}));
15
+ var BlockTypeEnum;
16
+ (function (BlockTypeEnum) {
17
+ BlockTypeEnum[BlockTypeEnum["NO_BLOCKER"] = 0] = "NO_BLOCKER";
18
+ BlockTypeEnum[BlockTypeEnum["SINGLE"] = 1] = "SINGLE";
19
+ BlockTypeEnum[BlockTypeEnum["DOUBLE"] = 2] = "DOUBLE";
20
+ BlockTypeEnum[BlockTypeEnum["TRIPLE"] = 3] = "TRIPLE";
21
+ })(BlockTypeEnum = exports.BlockTypeEnum || (exports.BlockTypeEnum = {}));
22
+ const eventType = rally_event_1.EventTypeEnum.BLOCK;
23
+ class Block extends in_play_event_1.InPlayEvent {
24
+ constructor({ score, playerId, target, failure, type, blockers, activeTraits }) {
25
+ super({ score, playerId, target, activeTraits, eventType });
26
+ this.type = type;
27
+ this.failure = failure;
28
+ this.blockers = blockers;
29
+ }
30
+ toString() {
31
+ const failure = `"failure":${this.failure}`;
32
+ const type = `"type":${this.type}`;
33
+ const blockers = `"blockers":[${this.blockers.map(b => `"${b}"`).join(',')}]`;
34
+ return `{${this._toString()},${failure},${type},${blockers}}`;
35
+ }
36
+ }
37
+ exports.Block = Block;
@@ -0,0 +1,7 @@
1
+ import type { BlockFailure, BlockType } from './block';
2
+ import type { ReceptionFailure, ReceptionType } from './reception';
3
+ import type { ServeFailure, ServeType } from './serve';
4
+ import type { SetFailure, SetType } from './set';
5
+ import type { SpikeFailure, SpikeType } from './spike';
6
+ export type EventSubType = BlockType | ReceptionType | ServeType | SetType | SpikeType;
7
+ export type EventFailureType = BlockFailure | ReceptionFailure | ServeFailure | SetFailure | SpikeFailure;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,17 @@
1
+ import { CourtTarget } from '../match';
2
+ import { RallyEvent, RallyEventOpts } from './rally-event';
3
+ import { Trait } from '../player';
4
+ export interface InPlayEventOpts extends RallyEventOpts {
5
+ readonly target: CourtTarget;
6
+ readonly score: number;
7
+ readonly activeTraits: Trait[];
8
+ }
9
+ export declare abstract class InPlayEvent<F, T> extends RallyEvent {
10
+ abstract failure: F;
11
+ abstract type: T;
12
+ readonly target: CourtTarget;
13
+ readonly score: number;
14
+ readonly activeTraits: Trait[];
15
+ protected constructor({ eventType, playerId, target, score, activeTraits }: InPlayEventOpts);
16
+ protected _toString(): string;
17
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.InPlayEvent = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ class InPlayEvent extends rally_event_1.RallyEvent {
6
+ constructor({ eventType, playerId, target, score, activeTraits }) {
7
+ super({ playerId, eventType });
8
+ this.target = target;
9
+ this.score = score;
10
+ this.activeTraits = activeTraits;
11
+ }
12
+ _toString() {
13
+ const score = `"score":${this.score}`;
14
+ const playerId = `"playerId":"${this.playerId}"`;
15
+ const target = `"target":${this.target}`;
16
+ const eventType = `"eventType":${this.eventType}`;
17
+ const traits = `"activeTraits":[${this.activeTraits.map(t => `"${t}"`).join(',')}]`;
18
+ return `${score},${playerId},${target},${eventType},${traits}`;
19
+ }
20
+ }
21
+ exports.InPlayEvent = InPlayEvent;
@@ -1,2 +1,10 @@
1
+ export * from './block';
2
+ export * from './event-types';
3
+ export * from './in-play-event';
4
+ export * from './libero-replacement';
1
5
  export * from './rally-event';
2
- export * from './events';
6
+ export * from './reception';
7
+ export * from './serve';
8
+ export * from './set';
9
+ export * from './spike';
10
+ export * from './substitution';
@@ -14,5 +14,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./block"), exports);
18
+ __exportStar(require("./event-types"), exports);
19
+ __exportStar(require("./in-play-event"), exports);
20
+ __exportStar(require("./libero-replacement"), exports);
17
21
  __exportStar(require("./rally-event"), exports);
18
- __exportStar(require("./events"), exports);
22
+ __exportStar(require("./reception"), exports);
23
+ __exportStar(require("./serve"), exports);
24
+ __exportStar(require("./set"), exports);
25
+ __exportStar(require("./spike"), exports);
26
+ __exportStar(require("./substitution"), exports);
@@ -0,0 +1,18 @@
1
+ import { RallyEvent } from './rally-event';
2
+ export declare enum LiberoReplacementTypeEnum {
3
+ LIBERO_IN = 0,
4
+ LIBERO_OUT = 1
5
+ }
6
+ export type LiberoReplacementType = LiberoReplacementTypeEnum.LIBERO_IN | LiberoReplacementTypeEnum.LIBERO_OUT;
7
+ interface LiberoReplacementOpts {
8
+ readonly playerId: string;
9
+ readonly libero: string;
10
+ readonly type: LiberoReplacementType;
11
+ }
12
+ export declare class LiberoReplacement extends RallyEvent {
13
+ readonly type: LiberoReplacementType;
14
+ readonly libero: string;
15
+ constructor({ playerId, type, libero }: LiberoReplacementOpts);
16
+ toString(): string;
17
+ }
18
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.LiberoReplacement = exports.LiberoReplacementTypeEnum = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ var LiberoReplacementTypeEnum;
6
+ (function (LiberoReplacementTypeEnum) {
7
+ LiberoReplacementTypeEnum[LiberoReplacementTypeEnum["LIBERO_IN"] = 0] = "LIBERO_IN";
8
+ LiberoReplacementTypeEnum[LiberoReplacementTypeEnum["LIBERO_OUT"] = 1] = "LIBERO_OUT";
9
+ })(LiberoReplacementTypeEnum = exports.LiberoReplacementTypeEnum || (exports.LiberoReplacementTypeEnum = {}));
10
+ const eventType = rally_event_1.EventTypeEnum.LIBERO_REPLACEMENT;
11
+ class LiberoReplacement extends rally_event_1.RallyEvent {
12
+ constructor({ playerId, type, libero }) {
13
+ super({ playerId, eventType });
14
+ this.type = type;
15
+ this.libero = libero;
16
+ }
17
+ toString() {
18
+ const playerId = `"playerId":"${this.playerId}"`;
19
+ const type = `"type":${this.type}`;
20
+ const eventType = `"eventType":${this.eventType}`;
21
+ const libero = `"libero":"${this.libero}"`;
22
+ return `{${playerId},${type},${eventType},${libero}}`;
23
+ }
24
+ }
25
+ exports.LiberoReplacement = LiberoReplacement;
@@ -1,11 +1,20 @@
1
- import { EventType } from './events';
1
+ export declare enum EventTypeEnum {
2
+ LIBERO_REPLACEMENT = 0,
3
+ SUBSTITUTION = 1,
4
+ SERVE = 2,
5
+ RECEPTION = 3,
6
+ SET = 4,
7
+ SPIKE = 5,
8
+ BLOCK = 6
9
+ }
10
+ export type EventType = EventTypeEnum.LIBERO_REPLACEMENT | EventTypeEnum.SUBSTITUTION | EventTypeEnum.SERVE | EventTypeEnum.RECEPTION | EventTypeEnum.SET | EventTypeEnum.SPIKE | EventTypeEnum.BLOCK;
2
11
  export interface RallyEventOpts {
3
- readonly player: string;
12
+ readonly playerId: string;
4
13
  readonly eventType: EventType;
5
14
  }
6
15
  export declare abstract class RallyEvent {
7
- readonly player: string;
16
+ readonly playerId: string;
8
17
  readonly eventType: EventType;
9
- protected constructor({ eventType, player }: RallyEventOpts);
18
+ protected constructor({ eventType, playerId }: RallyEventOpts);
10
19
  abstract toString(): string;
11
20
  }
@@ -1,9 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RallyEvent = void 0;
3
+ exports.RallyEvent = exports.EventTypeEnum = void 0;
4
+ var EventTypeEnum;
5
+ (function (EventTypeEnum) {
6
+ EventTypeEnum[EventTypeEnum["LIBERO_REPLACEMENT"] = 0] = "LIBERO_REPLACEMENT";
7
+ EventTypeEnum[EventTypeEnum["SUBSTITUTION"] = 1] = "SUBSTITUTION";
8
+ EventTypeEnum[EventTypeEnum["SERVE"] = 2] = "SERVE";
9
+ EventTypeEnum[EventTypeEnum["RECEPTION"] = 3] = "RECEPTION";
10
+ EventTypeEnum[EventTypeEnum["SET"] = 4] = "SET";
11
+ EventTypeEnum[EventTypeEnum["SPIKE"] = 5] = "SPIKE";
12
+ EventTypeEnum[EventTypeEnum["BLOCK"] = 6] = "BLOCK";
13
+ })(EventTypeEnum = exports.EventTypeEnum || (exports.EventTypeEnum = {}));
4
14
  class RallyEvent {
5
- constructor({ eventType, player }) {
6
- this.player = player;
15
+ constructor({ eventType, playerId }) {
16
+ this.playerId = playerId;
7
17
  this.eventType = eventType;
8
18
  }
9
19
  }
@@ -0,0 +1,33 @@
1
+ import { CourtTarget } from '../match';
2
+ import { Trait } from '../player';
3
+ import { InPlayEvent } from './in-play-event';
4
+ export declare enum ReceptionTypeEnum {
5
+ DIG = 0,
6
+ OVERHAND = 1,
7
+ ONE_HAND = 2,
8
+ OTHER_BODY_PART = 3
9
+ }
10
+ export type ReceptionType = ReceptionTypeEnum.DIG | ReceptionTypeEnum.OVERHAND | ReceptionTypeEnum.ONE_HAND | ReceptionTypeEnum.OTHER_BODY_PART;
11
+ export declare enum ReceptionFailureEnum {
12
+ NO_FAILURE = 0,
13
+ FAULT = 1,
14
+ MISS = 2,
15
+ OUT_OF_BOUNDS = 3,
16
+ BAD_PASS = 4
17
+ }
18
+ export type ReceptionFailure = ReceptionFailureEnum.NO_FAILURE | ReceptionFailureEnum.FAULT | ReceptionFailureEnum.MISS | ReceptionFailureEnum.OUT_OF_BOUNDS | ReceptionFailureEnum.BAD_PASS;
19
+ interface ReceptionOpts {
20
+ readonly type: ReceptionType;
21
+ readonly failure: ReceptionFailure;
22
+ readonly target: CourtTarget;
23
+ readonly score: number;
24
+ readonly activeTraits: Trait[];
25
+ readonly playerId: string;
26
+ }
27
+ export declare class Reception extends InPlayEvent<ReceptionFailure, ReceptionType> {
28
+ readonly failure: ReceptionFailure;
29
+ readonly type: ReceptionType;
30
+ constructor({ score, playerId, target, failure, type, activeTraits }: ReceptionOpts);
31
+ toString(): string;
32
+ }
33
+ export {};
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Reception = exports.ReceptionFailureEnum = exports.ReceptionTypeEnum = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ const in_play_event_1 = require("./in-play-event");
6
+ var ReceptionTypeEnum;
7
+ (function (ReceptionTypeEnum) {
8
+ ReceptionTypeEnum[ReceptionTypeEnum["DIG"] = 0] = "DIG";
9
+ ReceptionTypeEnum[ReceptionTypeEnum["OVERHAND"] = 1] = "OVERHAND";
10
+ ReceptionTypeEnum[ReceptionTypeEnum["ONE_HAND"] = 2] = "ONE_HAND";
11
+ ReceptionTypeEnum[ReceptionTypeEnum["OTHER_BODY_PART"] = 3] = "OTHER_BODY_PART";
12
+ })(ReceptionTypeEnum = exports.ReceptionTypeEnum || (exports.ReceptionTypeEnum = {}));
13
+ var ReceptionFailureEnum;
14
+ (function (ReceptionFailureEnum) {
15
+ ReceptionFailureEnum[ReceptionFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
16
+ ReceptionFailureEnum[ReceptionFailureEnum["FAULT"] = 1] = "FAULT";
17
+ ReceptionFailureEnum[ReceptionFailureEnum["MISS"] = 2] = "MISS";
18
+ ReceptionFailureEnum[ReceptionFailureEnum["OUT_OF_BOUNDS"] = 3] = "OUT_OF_BOUNDS";
19
+ ReceptionFailureEnum[ReceptionFailureEnum["BAD_PASS"] = 4] = "BAD_PASS";
20
+ })(ReceptionFailureEnum = exports.ReceptionFailureEnum || (exports.ReceptionFailureEnum = {}));
21
+ const eventType = rally_event_1.EventTypeEnum.RECEPTION;
22
+ class Reception extends in_play_event_1.InPlayEvent {
23
+ constructor({ score, playerId, target, failure, type, activeTraits }) {
24
+ super({ score, playerId, target, activeTraits, eventType });
25
+ this.type = type;
26
+ this.failure = failure;
27
+ }
28
+ toString() {
29
+ const failure = `"failure":${this.failure}`;
30
+ const type = `"type":${this.type}`;
31
+ return `{${this._toString()},${failure},${type}}`;
32
+ }
33
+ }
34
+ exports.Reception = Reception;
@@ -0,0 +1,33 @@
1
+ import { CourtTarget } from '../match';
2
+ import { Trait } from '../player';
3
+ import { InPlayEvent } from './in-play-event';
4
+ export declare enum ServeTypeEnum {
5
+ OVERHAND_TOPSPIN = 0,
6
+ OVERHAND_FLOAT = 1,
7
+ JUMP_TOPSPIN = 2,
8
+ JUMP_FLOAT = 3
9
+ }
10
+ export type ServeType = ServeTypeEnum.OVERHAND_TOPSPIN | ServeTypeEnum.OVERHAND_FLOAT | ServeTypeEnum.JUMP_TOPSPIN | ServeTypeEnum.JUMP_FLOAT;
11
+ export declare enum ServeFailureEnum {
12
+ NO_FAILURE = 0,
13
+ FAULT = 1,
14
+ MISS = 2,
15
+ NET = 3,
16
+ OUT_OF_BOUNDS = 4
17
+ }
18
+ export type ServeFailure = ServeFailureEnum.NO_FAILURE | ServeFailureEnum.FAULT | ServeFailureEnum.MISS | ServeFailureEnum.NET | ServeFailureEnum.OUT_OF_BOUNDS;
19
+ interface ServeOpts {
20
+ readonly type: ServeType;
21
+ readonly failure: ServeFailure;
22
+ readonly target: CourtTarget;
23
+ readonly score: number;
24
+ readonly activeTraits: Trait[];
25
+ readonly playerId: string;
26
+ }
27
+ export declare class Serve extends InPlayEvent<ServeFailure, ServeType> {
28
+ readonly failure: ServeFailure;
29
+ readonly type: ServeType;
30
+ constructor({ score, playerId, target, failure, type, activeTraits }: ServeOpts);
31
+ toString(): string;
32
+ }
33
+ export {};
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Serve = exports.ServeFailureEnum = exports.ServeTypeEnum = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ const in_play_event_1 = require("./in-play-event");
6
+ var ServeTypeEnum;
7
+ (function (ServeTypeEnum) {
8
+ ServeTypeEnum[ServeTypeEnum["OVERHAND_TOPSPIN"] = 0] = "OVERHAND_TOPSPIN";
9
+ ServeTypeEnum[ServeTypeEnum["OVERHAND_FLOAT"] = 1] = "OVERHAND_FLOAT";
10
+ ServeTypeEnum[ServeTypeEnum["JUMP_TOPSPIN"] = 2] = "JUMP_TOPSPIN";
11
+ ServeTypeEnum[ServeTypeEnum["JUMP_FLOAT"] = 3] = "JUMP_FLOAT";
12
+ })(ServeTypeEnum = exports.ServeTypeEnum || (exports.ServeTypeEnum = {}));
13
+ var ServeFailureEnum;
14
+ (function (ServeFailureEnum) {
15
+ ServeFailureEnum[ServeFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
16
+ ServeFailureEnum[ServeFailureEnum["FAULT"] = 1] = "FAULT";
17
+ ServeFailureEnum[ServeFailureEnum["MISS"] = 2] = "MISS";
18
+ ServeFailureEnum[ServeFailureEnum["NET"] = 3] = "NET";
19
+ ServeFailureEnum[ServeFailureEnum["OUT_OF_BOUNDS"] = 4] = "OUT_OF_BOUNDS";
20
+ })(ServeFailureEnum = exports.ServeFailureEnum || (exports.ServeFailureEnum = {}));
21
+ const eventType = rally_event_1.EventTypeEnum.SERVE;
22
+ class Serve extends in_play_event_1.InPlayEvent {
23
+ constructor({ score, playerId, target, failure, type, activeTraits }) {
24
+ super({ score, playerId, target, activeTraits, eventType });
25
+ this.type = type;
26
+ this.failure = failure;
27
+ }
28
+ toString() {
29
+ const failure = `"failure":${this.failure}`;
30
+ const type = `"type":${this.type}`;
31
+ return `{${this._toString()},${failure},${type}}`;
32
+ }
33
+ }
34
+ exports.Serve = Serve;
@@ -0,0 +1,31 @@
1
+ import { CourtTarget } from '../match';
2
+ import { Trait } from '../player';
3
+ import { InPlayEvent } from './in-play-event';
4
+ export declare enum SetTypeEnum {
5
+ OVERHAND = 0,
6
+ DUMP = 1
7
+ }
8
+ export type SetType = SetTypeEnum.OVERHAND | SetTypeEnum.DUMP;
9
+ export declare enum SetFailureEnum {
10
+ NO_FAILURE = 0,
11
+ FAULT = 1,
12
+ MISS = 2,
13
+ BAD_PASS = 3,
14
+ OUT_OF_BOUNDS = 4
15
+ }
16
+ export type SetFailure = SetFailureEnum.NO_FAILURE | SetFailureEnum.FAULT | SetFailureEnum.MISS | SetFailureEnum.BAD_PASS | SetFailureEnum.OUT_OF_BOUNDS;
17
+ interface SetOpts {
18
+ readonly type: SetType;
19
+ readonly failure: SetFailure;
20
+ readonly target: CourtTarget;
21
+ readonly score: number;
22
+ readonly activeTraits: Trait[];
23
+ readonly playerId: string;
24
+ }
25
+ export declare class Set extends InPlayEvent<SetFailure, SetType> {
26
+ readonly failure: SetFailure;
27
+ readonly type: SetType;
28
+ constructor({ score, playerId, target, failure, type, activeTraits }: SetOpts);
29
+ toString(): string;
30
+ }
31
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Set = exports.SetFailureEnum = exports.SetTypeEnum = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ const in_play_event_1 = require("./in-play-event");
6
+ var SetTypeEnum;
7
+ (function (SetTypeEnum) {
8
+ SetTypeEnum[SetTypeEnum["OVERHAND"] = 0] = "OVERHAND";
9
+ SetTypeEnum[SetTypeEnum["DUMP"] = 1] = "DUMP";
10
+ })(SetTypeEnum = exports.SetTypeEnum || (exports.SetTypeEnum = {}));
11
+ var SetFailureEnum;
12
+ (function (SetFailureEnum) {
13
+ SetFailureEnum[SetFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
14
+ SetFailureEnum[SetFailureEnum["FAULT"] = 1] = "FAULT";
15
+ SetFailureEnum[SetFailureEnum["MISS"] = 2] = "MISS";
16
+ SetFailureEnum[SetFailureEnum["BAD_PASS"] = 3] = "BAD_PASS";
17
+ SetFailureEnum[SetFailureEnum["OUT_OF_BOUNDS"] = 4] = "OUT_OF_BOUNDS";
18
+ })(SetFailureEnum = exports.SetFailureEnum || (exports.SetFailureEnum = {}));
19
+ const eventType = rally_event_1.EventTypeEnum.SET;
20
+ class Set extends in_play_event_1.InPlayEvent {
21
+ constructor({ score, playerId, target, failure, type, activeTraits }) {
22
+ super({ score, playerId, target, activeTraits, eventType });
23
+ this.type = type;
24
+ this.failure = failure;
25
+ }
26
+ toString() {
27
+ const failure = `"failure":${this.failure}`;
28
+ const type = `"type":${this.type}`;
29
+ return `{${this._toString()},${failure},${type}}`;
30
+ }
31
+ }
32
+ exports.Set = Set;
@@ -0,0 +1,35 @@
1
+ import { CourtTarget } from '../match';
2
+ import { Trait } from '../player';
3
+ import { InPlayEvent } from './in-play-event';
4
+ export declare enum SpikeTypeEnum {
5
+ CROSS_SHOT = 0,
6
+ LINE_SHOT = 1,
7
+ REVERSE_CROSS = 2,
8
+ TIP = 3,
9
+ DOWN_BALL = 4,
10
+ OVERHAND = 5
11
+ }
12
+ export type SpikeType = SpikeTypeEnum.CROSS_SHOT | SpikeTypeEnum.LINE_SHOT | SpikeTypeEnum.REVERSE_CROSS | SpikeTypeEnum.TIP | SpikeTypeEnum.DOWN_BALL | SpikeTypeEnum.OVERHAND;
13
+ export declare enum SpikeFailureEnum {
14
+ NO_FAILURE = 0,
15
+ FAULT = 1,
16
+ MISS = 2,
17
+ OUT_OF_BOUNDS = 3,
18
+ NET = 4
19
+ }
20
+ export type SpikeFailure = SpikeFailureEnum.NO_FAILURE | SpikeFailureEnum.FAULT | SpikeFailureEnum.MISS | SpikeFailureEnum.OUT_OF_BOUNDS | SpikeFailureEnum.NET;
21
+ interface SpikeOpts {
22
+ readonly type: SpikeType;
23
+ readonly failure: SpikeFailure;
24
+ readonly target: CourtTarget;
25
+ readonly score: number;
26
+ readonly activeTraits: Trait[];
27
+ readonly playerId: string;
28
+ }
29
+ export declare class Spike extends InPlayEvent<SpikeFailure, SpikeType> {
30
+ readonly failure: SpikeFailure;
31
+ readonly type: SpikeType;
32
+ constructor({ score, playerId, target, failure, type, activeTraits }: SpikeOpts);
33
+ toString(): string;
34
+ }
35
+ export {};
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Spike = exports.SpikeFailureEnum = exports.SpikeTypeEnum = void 0;
4
+ const rally_event_1 = require("./rally-event");
5
+ const in_play_event_1 = require("./in-play-event");
6
+ var SpikeTypeEnum;
7
+ (function (SpikeTypeEnum) {
8
+ SpikeTypeEnum[SpikeTypeEnum["CROSS_SHOT"] = 0] = "CROSS_SHOT";
9
+ SpikeTypeEnum[SpikeTypeEnum["LINE_SHOT"] = 1] = "LINE_SHOT";
10
+ SpikeTypeEnum[SpikeTypeEnum["REVERSE_CROSS"] = 2] = "REVERSE_CROSS";
11
+ SpikeTypeEnum[SpikeTypeEnum["TIP"] = 3] = "TIP";
12
+ SpikeTypeEnum[SpikeTypeEnum["DOWN_BALL"] = 4] = "DOWN_BALL";
13
+ SpikeTypeEnum[SpikeTypeEnum["OVERHAND"] = 5] = "OVERHAND";
14
+ })(SpikeTypeEnum = exports.SpikeTypeEnum || (exports.SpikeTypeEnum = {}));
15
+ var SpikeFailureEnum;
16
+ (function (SpikeFailureEnum) {
17
+ SpikeFailureEnum[SpikeFailureEnum["NO_FAILURE"] = 0] = "NO_FAILURE";
18
+ SpikeFailureEnum[SpikeFailureEnum["FAULT"] = 1] = "FAULT";
19
+ SpikeFailureEnum[SpikeFailureEnum["MISS"] = 2] = "MISS";
20
+ SpikeFailureEnum[SpikeFailureEnum["OUT_OF_BOUNDS"] = 3] = "OUT_OF_BOUNDS";
21
+ SpikeFailureEnum[SpikeFailureEnum["NET"] = 4] = "NET";
22
+ })(SpikeFailureEnum = exports.SpikeFailureEnum || (exports.SpikeFailureEnum = {}));
23
+ const eventType = rally_event_1.EventTypeEnum.SPIKE;
24
+ class Spike extends in_play_event_1.InPlayEvent {
25
+ constructor({ score, playerId, target, failure, type, activeTraits }) {
26
+ super({ score, playerId, target, activeTraits, eventType });
27
+ this.type = type;
28
+ this.failure = failure;
29
+ }
30
+ toString() {
31
+ const failure = `"failure":${this.failure}`;
32
+ const type = `"type":${this.type}`;
33
+ return `{${this._toString()},${failure},${type}}`;
34
+ }
35
+ }
36
+ exports.Spike = Spike;