@jayesol/jayeson.lib.sports 2.2.7-beta5 → 2.2.7-beta7

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.
@@ -1 +1,215 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.BasketballCodec=void 0;var tslib_1=require("tslib"),jayeson_lib_record_1=require("@jayesol/jayeson.lib.record"),proto=tslib_1.__importStar(require("./protobuf_bundle")),codec_1=require("./codec"),BasketballCodec=function(){function e(e){void 0===e&&(e=new codec_1.CodecHelper),this.codecHelper=e}return e.prototype.decodeMatch=function(e,a,t,r){var o=this;return e.map(function(e){var t=a[e.participants[0]],l=a[e.participants[1]],s=a[e.id],n=o.codecHelper.coerceInt64(e.startTime),_=a[e.league],c=a[e.country],i=null,b={};null!=e.metaInfo&&(b=e.metaInfo);var d=e.basketballMatch;if(d)switch(d.gender){case proto.BasketballMatch.Gender.MEN:i=jayeson_lib_record_1.BasketballGender.MEN;break;case proto.BasketballMatch.Gender.WOMEN:i=jayeson_lib_record_1.BasketballGender.WOMEN}return b=o.codecHelper.populatePKIntoMetaInfo(b,r),new jayeson_lib_record_1.BasketballMatchImpl(t,l,n,[],s,_,i,c,b)})},e.prototype.decodeEvent=function(e,a,t,r){var o=this,l=[],s={};for(var n in e.forEach(function(e){var l=a[e.id],n=e.metaInfo,_=jayeson_lib_record_1.BasketballEventType.NONE;switch(e.eventType.basketballEventType){case proto.BasketballEvent.Type.NONE:_=jayeson_lib_record_1.BasketballEventType.NONE;break;case proto.BasketballEvent.Type.FIRST_TO_20:_=jayeson_lib_record_1.BasketballEventType.FIRST_TO_20;break;case proto.BasketballEvent.Type.LAST_BASKET:_=jayeson_lib_record_1.BasketballEventType.LAST_BASKET;break;case proto.BasketballEvent.Type.TEAM_POINTS:_=jayeson_lib_record_1.BasketballEventType.TEAM_POINTS;break;case proto.BasketballEvent.Type.THREE_POINTERS:_=jayeson_lib_record_1.BasketballEventType.THREE_POINTERS;break;case proto.BasketballEvent.Type.HOME_POINT:_=jayeson_lib_record_1.BasketballEventType.HOME_POINT;break;case proto.BasketballEvent.Type.AWAY_POINT:_=jayeson_lib_record_1.BasketballEventType.AWAY_POINT}var c=a[e.matchId],i=[];null!=e.state&&i.push(o.decodeState(c,l,e.state,a,t,r));var b=new jayeson_lib_record_1.BasketballEventImpl(l,[],i,c,_,n);void 0===s[c]&&(s[c]=[]),s[c].push(b)}),s){var _=new jayeson_lib_record_1.BasketballMatchImpl("","",0,s[n],n,"",jayeson_lib_record_1.BasketballGender.MEN,"",{});l.push(_)}return l},e.prototype.decodeRecord=function(e,a,t,r){var o=this,l=[],s={};for(var n in e.forEach(function(e){var t=o.codecHelper.coerceInt64(e.id),r=jayeson_lib_record_1.OddType[e.oddType.toString()],l=jayeson_lib_record_1.LBType[e.lbType.toString()],n=null,_=e.timeType.basketballTimeType;switch(proto.BasketballTimeType.SettleOn[_.settle.toString()]){case"FT":n=jayeson_lib_record_1.BasketballTimeType.FT;break;case"H1":n=jayeson_lib_record_1.BasketballTimeType.H1;break;case"H2":n=jayeson_lib_record_1.BasketballTimeType.H2;break;case"Q1":n=jayeson_lib_record_1.BasketballTimeType.Q1;break;case"Q2":n=jayeson_lib_record_1.BasketballTimeType.Q2;break;case"Q3":n=jayeson_lib_record_1.BasketballTimeType.Q3;break;case"Q4":n=jayeson_lib_record_1.BasketballTimeType.Q4}var c=a[e.source],i=jayeson_lib_record_1.OddFormat[e.format.toString()],b=e.metaInfo,d=e.pivotValue,p=jayeson_lib_record_1.PivotType[e.pivotType.toString()],y=jayeson_lib_record_1.PivotBias[e.pivotBias.toString()],T=e.basketballRecord,k=!1;T&&(k=T.swapped);var v=o.codecHelper.formatRate(e.rates[0]),B=o.codecHelper.formatRate(e.rates[1]),E=o.codecHelper.formatRate(e.rates[2]),u=a[e.rateIds[0]],j=a[e.rateIds[1]],m=a[e.rateIds[2]],f=a[e.eventId],h=a[e.matchId],I=new jayeson_lib_record_1.BasketballRecord(h,f,t,r,l,n,c,i,b,v,B,E,d,p,y,u,j,m,k);void 0===s[h]&&(s[h]={}),void 0===s[h][f]&&(s[h][f]=[]),s[h][f].push(I)}),s){var _=s[n],c=[];for(var i in _){var b=new jayeson_lib_record_1.BasketballEventImpl(i,_[i],[],n,jayeson_lib_record_1.BasketballEventType.NONE,{});c.push(b)}var d=new jayeson_lib_record_1.BasketballMatchImpl("","",0,c,n,"",jayeson_lib_record_1.BasketballGender.MEN,"",{});l.push(d)}return l},e.prototype.decodeState=function(e,a,t,r,o,l,s){void 0===s&&(s=Date.now());var n=t.duration,_=t.basketballEventState,c=jayeson_lib_record_1.BasketballSegment[t.basketballEventState.segment.toString()],i=_.timeout,b=t.participantStats[0].scores,d=t.participantStats[1].scores;if(b.length<7)for(var p=b.length,y=0;p+y<7;y++)b.push(-1);if(d.length<7){var T=d.length;for(y=0;T+y<7;y++)d.push(-1)}var k=new jayeson_lib_record_1.BasketballStats(b[0],b[1],b[2],b[3],b[4],b[5],b[6]),v=new jayeson_lib_record_1.BasketballStats(d[0],d[1],d[2],d[3],d[4],d[5],d[6]),B=_.bookPriority;return new jayeson_lib_record_1.BasketballEventState(k,v,n,l,e,a,s,c,i,B)},e}();exports.BasketballCodec=BasketballCodec;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.BasketballCodec = void 0;
27
+ var jayeson_lib_record_1 = require("@jayesol/jayeson.lib.record");
28
+ var proto = __importStar(require("./protobuf_bundle"));
29
+ var codec_1 = require("./codec");
30
+ var BasketballCodec = /** @class */ (function () {
31
+ function BasketballCodec(codecHelper) {
32
+ if (codecHelper === void 0) { codecHelper = new codec_1.CodecHelper(); }
33
+ this.codecHelper = codecHelper;
34
+ }
35
+ BasketballCodec.prototype.decodeMatch = function (input, pool, action, key) {
36
+ var _this = this;
37
+ return input.map(function (match) {
38
+ var host = pool[match.participants[0]];
39
+ var guest = pool[match.participants[1]];
40
+ var id = pool[match.id];
41
+ var startTime = _this.codecHelper.coerceInt64(match.startTime);
42
+ var league = pool[match.league];
43
+ var country = pool[match.country];
44
+ var gender = null;
45
+ var meta = {};
46
+ if (match.metaInfo != null) {
47
+ meta = match.metaInfo;
48
+ }
49
+ var bballMatch = match.basketballMatch;
50
+ if (bballMatch) {
51
+ switch (bballMatch.gender) {
52
+ case proto.BasketballMatch.Gender.MEN:
53
+ gender = jayeson_lib_record_1.BasketballGender.MEN;
54
+ break;
55
+ case proto.BasketballMatch.Gender.WOMEN:
56
+ gender = jayeson_lib_record_1.BasketballGender.WOMEN;
57
+ break;
58
+ }
59
+ }
60
+ meta = _this.codecHelper.populatePKIntoMetaInfo(meta, key);
61
+ return new jayeson_lib_record_1.BasketballMatchImpl(host, guest, startTime, [], id, league, gender, country, meta);
62
+ });
63
+ };
64
+ BasketballCodec.prototype.decodeEvent = function (input, pool, action, key) {
65
+ var _this = this;
66
+ var result = [];
67
+ var matchIdToEvents = {};
68
+ input.forEach(function (event) {
69
+ var id = pool[event.id];
70
+ var meta = event.metaInfo;
71
+ var eType = jayeson_lib_record_1.BasketballEventType.NONE;
72
+ switch (event.eventType.basketballEventType) {
73
+ case proto.BasketballEvent.Type.NONE:
74
+ eType = jayeson_lib_record_1.BasketballEventType.NONE;
75
+ break;
76
+ case proto.BasketballEvent.Type.FIRST_TO_20:
77
+ eType = jayeson_lib_record_1.BasketballEventType.FIRST_TO_20;
78
+ break;
79
+ case proto.BasketballEvent.Type.LAST_BASKET:
80
+ eType = jayeson_lib_record_1.BasketballEventType.LAST_BASKET;
81
+ break;
82
+ case proto.BasketballEvent.Type.TEAM_POINTS:
83
+ eType = jayeson_lib_record_1.BasketballEventType.TEAM_POINTS;
84
+ break;
85
+ case proto.BasketballEvent.Type.THREE_POINTERS:
86
+ eType = jayeson_lib_record_1.BasketballEventType.THREE_POINTERS;
87
+ break;
88
+ case proto.BasketballEvent.Type.HOME_POINT:
89
+ eType = jayeson_lib_record_1.BasketballEventType.HOME_POINT;
90
+ break;
91
+ case proto.BasketballEvent.Type.AWAY_POINT:
92
+ eType = jayeson_lib_record_1.BasketballEventType.AWAY_POINT;
93
+ break;
94
+ }
95
+ var mId = pool[event.matchId];
96
+ var states = [];
97
+ if (event.state != null) {
98
+ states.push(_this.decodeState(mId, id, event.state, pool, action, key));
99
+ }
100
+ var ev = new jayeson_lib_record_1.BasketballEventImpl(id, [], states, mId, eType, meta);
101
+ if (matchIdToEvents[mId] === undefined) {
102
+ matchIdToEvents[mId] = [];
103
+ }
104
+ matchIdToEvents[mId].push(ev);
105
+ });
106
+ //add the matches
107
+ for (var matchId in matchIdToEvents) {
108
+ var currMatch = new jayeson_lib_record_1.BasketballMatchImpl('', '', 0, matchIdToEvents[matchId], matchId, '', jayeson_lib_record_1.BasketballGender.MEN, "", {});
109
+ result.push(currMatch);
110
+ }
111
+ return result;
112
+ };
113
+ BasketballCodec.prototype.decodeRecord = function (input, pool, action, key) {
114
+ var _this = this;
115
+ var result = [];
116
+ var matchMap = {}; //map of match id to events array for that particular match
117
+ input.forEach(function (record) {
118
+ var id = _this.codecHelper.coerceInt64(record.id);
119
+ var oddType = jayeson_lib_record_1.OddType[record.oddType.toString()];
120
+ var lbType = jayeson_lib_record_1.LBType[record.lbType.toString()];
121
+ var timeType = null;
122
+ var protoTimeType = record.timeType.basketballTimeType;
123
+ var str = proto.BasketballTimeType.SettleOn[protoTimeType.settle.toString()];
124
+ switch (str) {
125
+ case "FT":
126
+ timeType = jayeson_lib_record_1.BasketballTimeType.FT;
127
+ break;
128
+ case "H1":
129
+ timeType = jayeson_lib_record_1.BasketballTimeType.H1;
130
+ break;
131
+ case "H2":
132
+ timeType = jayeson_lib_record_1.BasketballTimeType.H2;
133
+ break;
134
+ case "Q1":
135
+ timeType = jayeson_lib_record_1.BasketballTimeType.Q1;
136
+ break;
137
+ case "Q2":
138
+ timeType = jayeson_lib_record_1.BasketballTimeType.Q2;
139
+ break;
140
+ case "Q3":
141
+ timeType = jayeson_lib_record_1.BasketballTimeType.Q3;
142
+ break;
143
+ case "Q4":
144
+ timeType = jayeson_lib_record_1.BasketballTimeType.Q4;
145
+ break;
146
+ }
147
+ var source = pool[record.source];
148
+ var oddFormat = jayeson_lib_record_1.OddFormat[record.format.toString()];
149
+ var meta = record.metaInfo;
150
+ var pivotValue = record.pivotValue;
151
+ var pivotType = jayeson_lib_record_1.PivotType[record.pivotType.toString()];
152
+ var pivotBias = jayeson_lib_record_1.PivotBias[record.pivotBias.toString()];
153
+ var bballRec = record.basketballRecord;
154
+ var isSwapped = false;
155
+ if (bballRec) {
156
+ isSwapped = bballRec.swapped;
157
+ }
158
+ var rateOver = _this.codecHelper.formatRate(record.rates[0]);
159
+ var rateUnder = _this.codecHelper.formatRate(record.rates[1]);
160
+ var rateEqual = _this.codecHelper.formatRate(record.rates[2]);
161
+ var rateOverId = pool[record.rateIds[0]];
162
+ var rateUnderId = pool[record.rateIds[1]];
163
+ var rateEqualId = pool[record.rateIds[2]];
164
+ var eId = pool[record.eventId];
165
+ var mId = pool[record.matchId];
166
+ var rec = new jayeson_lib_record_1.BasketballRecord(mId, eId, id, oddType, lbType, timeType, source, oddFormat, meta, rateOver, rateUnder, rateEqual, pivotValue, pivotType, pivotBias, rateOverId, rateUnderId, rateEqualId, isSwapped);
167
+ if (matchMap[mId] === undefined) {
168
+ matchMap[mId] = {};
169
+ }
170
+ if (matchMap[mId][eId] === undefined) {
171
+ matchMap[mId][eId] = [];
172
+ }
173
+ matchMap[mId][eId].push(rec);
174
+ });
175
+ for (var mId in matchMap) {
176
+ var eventMap = matchMap[mId];
177
+ var eventArray = [];
178
+ for (var eId in eventMap) {
179
+ var ev = new jayeson_lib_record_1.BasketballEventImpl(eId, eventMap[eId], [], mId, jayeson_lib_record_1.BasketballEventType.NONE, {});
180
+ eventArray.push(ev);
181
+ }
182
+ var match = new jayeson_lib_record_1.BasketballMatchImpl('', '', 0, eventArray, mId, '', jayeson_lib_record_1.BasketballGender.MEN, "", {});
183
+ result.push(match);
184
+ }
185
+ return result;
186
+ };
187
+ BasketballCodec.prototype.decodeState = function (matchId, eventId, state, pool, action, key, time) {
188
+ if (time === void 0) { time = Date.now(); }
189
+ var duration = state.duration;
190
+ var bballState = state.basketballEventState;
191
+ var seg = jayeson_lib_record_1.BasketballSegment[state.basketballEventState.segment.toString()];
192
+ var timeout = bballState.timeout;
193
+ var hostStat = state.participantStats[0].scores;
194
+ var guestStat = state.participantStats[1].scores;
195
+ if (hostStat.length < 7) {
196
+ var hostLength = hostStat.length;
197
+ for (var i = 0; hostLength + i < 7; i++) {
198
+ hostStat.push(-1);
199
+ }
200
+ }
201
+ if (guestStat.length < 7) {
202
+ var guestLength = guestStat.length;
203
+ for (var i = 0; guestLength + i < 7; i++) {
204
+ guestStat.push(-1);
205
+ }
206
+ }
207
+ var p1Stat = new jayeson_lib_record_1.BasketballStats(hostStat[0], hostStat[1], hostStat[2], hostStat[3], hostStat[4], hostStat[5], hostStat[6]);
208
+ var p2Stat = new jayeson_lib_record_1.BasketballStats(guestStat[0], guestStat[1], guestStat[2], guestStat[3], guestStat[4], guestStat[5], guestStat[6]);
209
+ var bookPriority = bballState.bookPriority;
210
+ var s = new jayeson_lib_record_1.BasketballEventState(p1Stat, p2Stat, duration, key, matchId, eventId, time, seg, timeout, bookPriority);
211
+ return s;
212
+ };
213
+ return BasketballCodec;
214
+ }());
215
+ exports.BasketballCodec = BasketballCodec;