overtime-utils 0.2.45 → 0.2.46

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.
@@ -395,4 +395,80 @@ export const TOTAL_MARKET_TYPE_MAP: Partial<Record<MarketType, MarketTypeInfo>>
395
395
  name: 'Total odd/even',
396
396
  resultType: ResultType.EXACT_POSITION,
397
397
  },
398
+
399
+ // Total odd/even per team period - quarter for football/basketball
400
+ [MarketType.FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN]: {
401
+ id: MarketType.FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
402
+ key: 'firstPeriodTotalHomeTeamOddEven',
403
+ name: 'Total odd/even 1st',
404
+ resultType: ResultType.EXACT_POSITION,
405
+ },
406
+ [MarketType.FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN]: {
407
+ id: MarketType.FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
408
+ key: 'firstPeriodTotalAwayTeamOddEven',
409
+ name: 'Total odd/even 1st',
410
+ resultType: ResultType.EXACT_POSITION,
411
+ },
412
+ [MarketType.SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN]: {
413
+ id: MarketType.SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
414
+ key: 'secondPeriodTotalHomeTeamOddEven',
415
+ name: 'Total odd/even 2nd',
416
+ resultType: ResultType.EXACT_POSITION,
417
+ },
418
+ [MarketType.SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN]: {
419
+ id: MarketType.SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
420
+ key: 'secondPeriodTotalAwayTeamOddEven',
421
+ name: 'Total odd/even 2nd',
422
+ resultType: ResultType.EXACT_POSITION,
423
+ },
424
+ [MarketType.THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN]: {
425
+ id: MarketType.THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
426
+ key: 'thirdPeriodTotalHomeTeamOddEven',
427
+ name: 'Total odd/even 3rd',
428
+ resultType: ResultType.EXACT_POSITION,
429
+ },
430
+ [MarketType.THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN]: {
431
+ id: MarketType.THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
432
+ key: 'thirdPeriodTotalAwayTeamOddEven',
433
+ name: 'Total odd/even 3rd',
434
+ resultType: ResultType.EXACT_POSITION,
435
+ },
436
+ [MarketType.FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN]: {
437
+ id: MarketType.FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
438
+ key: 'fourthPeriodTotalHomeTeamOddEven',
439
+ name: 'Total odd/even 4th',
440
+ resultType: ResultType.EXACT_POSITION,
441
+ },
442
+ [MarketType.FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN]: {
443
+ id: MarketType.FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
444
+ key: 'fourthPeriodTotalAwayTeamOddEven',
445
+ name: 'Total odd/even 4th',
446
+ resultType: ResultType.EXACT_POSITION,
447
+ },
448
+
449
+ // Total odd/even per team period - half for football/basketball
450
+ [MarketType.FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN]: {
451
+ id: MarketType.FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
452
+ key: 'firstPeriodTotal2HomeTeamOddEven',
453
+ name: 'Total odd/even 1st',
454
+ resultType: ResultType.EXACT_POSITION,
455
+ },
456
+ [MarketType.FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN]: {
457
+ id: MarketType.FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
458
+ key: 'firstPeriodTotal2AwayTeamOddEven',
459
+ name: 'Total odd/even 1st',
460
+ resultType: ResultType.EXACT_POSITION,
461
+ },
462
+ [MarketType.SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN]: {
463
+ id: MarketType.SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
464
+ key: 'secondPeriodTotal2HomeTeamOddEven',
465
+ name: 'Total odd/even 2nd',
466
+ resultType: ResultType.EXACT_POSITION,
467
+ },
468
+ [MarketType.SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN]: {
469
+ id: MarketType.SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
470
+ key: 'secondPeriodTotal2AwayTeamOddEven',
471
+ name: 'Total odd/even 2nd',
472
+ resultType: ResultType.EXACT_POSITION,
473
+ },
398
474
  };
@@ -478,6 +478,20 @@ export const TOTAL_MARKET_TYPES = [
478
478
  MarketType.TOTAL_PASSES,
479
479
  MarketType.HOME_TEAM_TOTAL_PASSING_ATTEMPTS,
480
480
  MarketType.AWAY_TEAM_TOTAL_PASSING_ATTEMPTS,
481
+
482
+ // Football team totals
483
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS,
484
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS,
485
+ MarketType.TOTAL_FIELD_GOALS_HOME_TEAM,
486
+ MarketType.TOTAL_FIELD_GOALS_AWAY_TEAM,
487
+ MarketType.TOTAL_RUSHING_YARDS_HOME_TEAM,
488
+ MarketType.TOTAL_RUSHING_YARDS_AWAY_TEAM,
489
+ MarketType.TOTAL_RECEIVING_YARDS_HOME_TEAM,
490
+ MarketType.TOTAL_RECEIVING_YARDS_AWAY_TEAM,
491
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_HOME_TEAM,
492
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_AWAY_TEAM,
493
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_HOME_TEAM,
494
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_AWAY_TEAM,
481
495
  ];
482
496
 
483
497
  export const HOME_TEAM_TOTAL_MARKET_TYPES = [
@@ -538,6 +552,13 @@ export const HOME_TEAM_TOTAL_MARKET_TYPES = [
538
552
  MarketType.HOME_TEAM_TOTAL_PASSING_ATTEMPTS,
539
553
  MarketType.HOME_TEAM_TOTAL_THROW_INS,
540
554
  MarketType.HOME_TEAM_TOTAL_OFFSIDES,
555
+
556
+ // Football team totals
557
+ MarketType.TOTAL_FIELD_GOALS_HOME_TEAM,
558
+ MarketType.TOTAL_RUSHING_YARDS_HOME_TEAM,
559
+ MarketType.TOTAL_RECEIVING_YARDS_HOME_TEAM,
560
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_HOME_TEAM,
561
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_HOME_TEAM,
541
562
  ];
542
563
 
543
564
  export const AWAY_TEAM_TOTAL_MARKET_TYPES = [
@@ -598,6 +619,13 @@ export const AWAY_TEAM_TOTAL_MARKET_TYPES = [
598
619
  MarketType.AWAY_TEAM_TOTAL_PASSING_ATTEMPTS,
599
620
  MarketType.AWAY_TEAM_TOTAL_THROW_INS,
600
621
  MarketType.AWAY_TEAM_TOTAL_OFFSIDES,
622
+
623
+ // Football team totals
624
+ MarketType.TOTAL_FIELD_GOALS_AWAY_TEAM,
625
+ MarketType.TOTAL_RUSHING_YARDS_AWAY_TEAM,
626
+ MarketType.TOTAL_RECEIVING_YARDS_AWAY_TEAM,
627
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_AWAY_TEAM,
628
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_AWAY_TEAM,
601
629
  ];
602
630
 
603
631
  export const TOTAL_ODD_EVEN_MARKET_TYPES = [
@@ -631,6 +659,20 @@ export const TOTAL_ODD_EVEN_MARKET_TYPES = [
631
659
 
632
660
  MarketType.TOTAL_HOME_TEAM_ODD_EVEN,
633
661
  MarketType.TOTAL_AWAY_TEAM_ODD_EVEN,
662
+
663
+ // Total odd/even per team period
664
+ MarketType.FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
665
+ MarketType.FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
666
+ MarketType.SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
667
+ MarketType.SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
668
+ MarketType.THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
669
+ MarketType.THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
670
+ MarketType.FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
671
+ MarketType.FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
672
+ MarketType.FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
673
+ MarketType.FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
674
+ MarketType.SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
675
+ MarketType.SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
634
676
  ];
635
677
 
636
678
  export const TOTAL_EXACT_MARKET_TYPES = [
@@ -1176,6 +1218,22 @@ export const FIRST_PERIOD_MARKET_TYPES = [
1176
1218
  MarketType.FIRST_PERIOD_ROUND_29_ML,
1177
1219
  MarketType.FIRST_PERIOD_ROUND_30_ML,
1178
1220
  MarketType.FIRST_PERIOD_WILL_THERE_BE_OVERTIME,
1221
+ MarketType.FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1222
+ MarketType.FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1223
+
1224
+ // Race to points
1225
+ MarketType.FIRST_PERIOD_RACE_TO_5_POINTS,
1226
+ MarketType.FIRST_PERIOD_RACE_TO_6_POINTS,
1227
+ MarketType.FIRST_PERIOD_RACE_TO_7_POINTS,
1228
+ MarketType.FIRST_PERIOD_RACE_TO_9_POINTS,
1229
+ MarketType.FIRST_PERIOD_RACE_TO_10_POINTS,
1230
+ MarketType.FIRST_PERIOD_RACE_TO_12_POINTS,
1231
+ MarketType.FIRST_PERIOD_RACE_TO_15_POINTS,
1232
+ MarketType.FIRST_PERIOD_RACE_TO_20_POINTS,
1233
+ MarketType.FIRST_PERIOD_RACE_TO_25_POINTS,
1234
+ MarketType.FIRST_PERIOD_RACE_TO_28_POINTS,
1235
+ MarketType.FIRST_PERIOD_RACE_TO_30_POINTS,
1236
+ MarketType.FIRST_PERIOD_RACE_TO_35_POINTS,
1179
1237
  ];
1180
1238
 
1181
1239
  export const SECOND_PERIOD_MARKET_TYPES = [
@@ -1279,6 +1337,22 @@ export const SECOND_PERIOD_MARKET_TYPES = [
1279
1337
  MarketType.SECOND_PERIOD_ROUND_29_ML,
1280
1338
  MarketType.SECOND_PERIOD_ROUND_30_ML,
1281
1339
  MarketType.SECOND_PERIOD_WILL_THERE_BE_OVERTIME,
1340
+ MarketType.SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1341
+ MarketType.SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1342
+
1343
+ // Race to points
1344
+ MarketType.SECOND_PERIOD_RACE_TO_5_POINTS,
1345
+ MarketType.SECOND_PERIOD_RACE_TO_6_POINTS,
1346
+ MarketType.SECOND_PERIOD_RACE_TO_7_POINTS,
1347
+ MarketType.SECOND_PERIOD_RACE_TO_9_POINTS,
1348
+ MarketType.SECOND_PERIOD_RACE_TO_10_POINTS,
1349
+ MarketType.SECOND_PERIOD_RACE_TO_12_POINTS,
1350
+ MarketType.SECOND_PERIOD_RACE_TO_15_POINTS,
1351
+ MarketType.SECOND_PERIOD_RACE_TO_20_POINTS,
1352
+ MarketType.SECOND_PERIOD_RACE_TO_25_POINTS,
1353
+ MarketType.SECOND_PERIOD_RACE_TO_28_POINTS,
1354
+ MarketType.SECOND_PERIOD_RACE_TO_30_POINTS,
1355
+ MarketType.SECOND_PERIOD_RACE_TO_35_POINTS,
1282
1356
  ];
1283
1357
 
1284
1358
  export const THIRD_PERIOD_MARKET_TYPES = [
@@ -1363,6 +1437,22 @@ export const THIRD_PERIOD_MARKET_TYPES = [
1363
1437
  MarketType.THIRD_PERIOD_ROUND_29_ML,
1364
1438
  MarketType.THIRD_PERIOD_ROUND_30_ML,
1365
1439
  MarketType.THIRD_PERIOD_WILL_THERE_BE_OVERTIME,
1440
+ MarketType.THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1441
+ MarketType.THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1442
+
1443
+ // Race to points
1444
+ MarketType.THIRD_PERIOD_RACE_TO_5_POINTS,
1445
+ MarketType.THIRD_PERIOD_RACE_TO_6_POINTS,
1446
+ MarketType.THIRD_PERIOD_RACE_TO_7_POINTS,
1447
+ MarketType.THIRD_PERIOD_RACE_TO_9_POINTS,
1448
+ MarketType.THIRD_PERIOD_RACE_TO_10_POINTS,
1449
+ MarketType.THIRD_PERIOD_RACE_TO_12_POINTS,
1450
+ MarketType.THIRD_PERIOD_RACE_TO_15_POINTS,
1451
+ MarketType.THIRD_PERIOD_RACE_TO_20_POINTS,
1452
+ MarketType.THIRD_PERIOD_RACE_TO_25_POINTS,
1453
+ MarketType.THIRD_PERIOD_RACE_TO_28_POINTS,
1454
+ MarketType.THIRD_PERIOD_RACE_TO_30_POINTS,
1455
+ MarketType.THIRD_PERIOD_RACE_TO_35_POINTS,
1366
1456
  ];
1367
1457
 
1368
1458
  export const FOURTH_PERIOD_MARKET_TYPES = [
@@ -1446,6 +1536,22 @@ export const FOURTH_PERIOD_MARKET_TYPES = [
1446
1536
  MarketType.FOURTH_PERIOD_ROUND_29_ML,
1447
1537
  MarketType.FOURTH_PERIOD_ROUND_30_ML,
1448
1538
  MarketType.FOURTH_PERIOD_WILL_THERE_BE_OVERTIME,
1539
+ MarketType.FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1540
+ MarketType.FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1541
+
1542
+ // Race to points
1543
+ MarketType.FOURTH_PERIOD_RACE_TO_5_POINTS,
1544
+ MarketType.FOURTH_PERIOD_RACE_TO_6_POINTS,
1545
+ MarketType.FOURTH_PERIOD_RACE_TO_7_POINTS,
1546
+ MarketType.FOURTH_PERIOD_RACE_TO_9_POINTS,
1547
+ MarketType.FOURTH_PERIOD_RACE_TO_10_POINTS,
1548
+ MarketType.FOURTH_PERIOD_RACE_TO_12_POINTS,
1549
+ MarketType.FOURTH_PERIOD_RACE_TO_15_POINTS,
1550
+ MarketType.FOURTH_PERIOD_RACE_TO_20_POINTS,
1551
+ MarketType.FOURTH_PERIOD_RACE_TO_25_POINTS,
1552
+ MarketType.FOURTH_PERIOD_RACE_TO_28_POINTS,
1553
+ MarketType.FOURTH_PERIOD_RACE_TO_30_POINTS,
1554
+ MarketType.FOURTH_PERIOD_RACE_TO_35_POINTS,
1449
1555
  ];
1450
1556
 
1451
1557
  export const FIFTH_PERIOD_MARKET_TYPES = [
@@ -1591,6 +1697,22 @@ export const FIRST_PERIOD_MARKET_TYPES2 = [
1591
1697
  MarketType.FIRST_PERIOD_TOTAL2_TOUCHDOWNS,
1592
1698
  MarketType.FIRST_PERIOD_TOTAL2_TOUCHDOWNS_HOME_TEAM,
1593
1699
  MarketType.FIRST_PERIOD_TOTAL2_TOUCHDOWNS_AWAY_TEAM,
1700
+ MarketType.FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
1701
+ MarketType.FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
1702
+
1703
+ // Race to points
1704
+ MarketType.FIRST_PERIOD_RACE_TO_5_POINTS2,
1705
+ MarketType.FIRST_PERIOD_RACE_TO_6_POINTS2,
1706
+ MarketType.FIRST_PERIOD_RACE_TO_7_POINTS2,
1707
+ MarketType.FIRST_PERIOD_RACE_TO_9_POINTS2,
1708
+ MarketType.FIRST_PERIOD_RACE_TO_10_POINTS2,
1709
+ MarketType.FIRST_PERIOD_RACE_TO_12_POINTS2,
1710
+ MarketType.FIRST_PERIOD_RACE_TO_15_POINTS2,
1711
+ MarketType.FIRST_PERIOD_RACE_TO_20_POINTS2,
1712
+ MarketType.FIRST_PERIOD_RACE_TO_25_POINTS2,
1713
+ MarketType.FIRST_PERIOD_RACE_TO_28_POINTS2,
1714
+ MarketType.FIRST_PERIOD_RACE_TO_30_POINTS2,
1715
+ MarketType.FIRST_PERIOD_RACE_TO_35_POINTS2,
1594
1716
  ];
1595
1717
 
1596
1718
  export const SECOND_PERIOD_MARKET_TYPES2 = [
@@ -1604,6 +1726,22 @@ export const SECOND_PERIOD_MARKET_TYPES2 = [
1604
1726
  MarketType.SECOND_PERIOD_TOTAL2_TOUCHDOWNS,
1605
1727
  MarketType.SECOND_PERIOD_TOTAL2_TOUCHDOWNS_HOME_TEAM,
1606
1728
  MarketType.SECOND_PERIOD_TOTAL2_TOUCHDOWNS_AWAY_TEAM,
1729
+ MarketType.SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
1730
+ MarketType.SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
1731
+
1732
+ // Race to points
1733
+ MarketType.SECOND_PERIOD_RACE_TO_5_POINTS2,
1734
+ MarketType.SECOND_PERIOD_RACE_TO_6_POINTS2,
1735
+ MarketType.SECOND_PERIOD_RACE_TO_7_POINTS2,
1736
+ MarketType.SECOND_PERIOD_RACE_TO_9_POINTS2,
1737
+ MarketType.SECOND_PERIOD_RACE_TO_10_POINTS2,
1738
+ MarketType.SECOND_PERIOD_RACE_TO_12_POINTS2,
1739
+ MarketType.SECOND_PERIOD_RACE_TO_15_POINTS2,
1740
+ MarketType.SECOND_PERIOD_RACE_TO_20_POINTS2,
1741
+ MarketType.SECOND_PERIOD_RACE_TO_25_POINTS2,
1742
+ MarketType.SECOND_PERIOD_RACE_TO_28_POINTS2,
1743
+ MarketType.SECOND_PERIOD_RACE_TO_30_POINTS2,
1744
+ MarketType.SECOND_PERIOD_RACE_TO_35_POINTS2,
1607
1745
  ];
1608
1746
 
1609
1747
  export const FIRST_THREE_INNINGS_MARKET_TYPES = [
@@ -1700,6 +1838,21 @@ export const HOME_TEAM_MARKET_TYPES = [
1700
1838
  MarketType.HOME_TEAM_TOTAL_PASSING_ATTEMPTS,
1701
1839
  MarketType.HOME_TEAM_TOTAL_THROW_INS,
1702
1840
  MarketType.HOME_TEAM_TOTAL_OFFSIDES,
1841
+
1842
+ // Football team totals
1843
+ MarketType.TOTAL_FIELD_GOALS_HOME_TEAM,
1844
+ MarketType.TOTAL_RUSHING_YARDS_HOME_TEAM,
1845
+ MarketType.TOTAL_RECEIVING_YARDS_HOME_TEAM,
1846
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_HOME_TEAM,
1847
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_HOME_TEAM,
1848
+
1849
+ // Total odd/even per team period
1850
+ MarketType.FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1851
+ MarketType.SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1852
+ MarketType.THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1853
+ MarketType.FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN,
1854
+ MarketType.FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
1855
+ MarketType.SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN,
1703
1856
  ];
1704
1857
 
1705
1858
  export const AWAY_TEAM_MARKET_TYPES = [
@@ -1776,6 +1929,21 @@ export const AWAY_TEAM_MARKET_TYPES = [
1776
1929
  MarketType.AWAY_TEAM_TOTAL_PASSING_ATTEMPTS,
1777
1930
  MarketType.AWAY_TEAM_TOTAL_THROW_INS,
1778
1931
  MarketType.AWAY_TEAM_TOTAL_OFFSIDES,
1932
+
1933
+ // Football team totals
1934
+ MarketType.TOTAL_FIELD_GOALS_AWAY_TEAM,
1935
+ MarketType.TOTAL_RUSHING_YARDS_AWAY_TEAM,
1936
+ MarketType.TOTAL_RECEIVING_YARDS_AWAY_TEAM,
1937
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_AWAY_TEAM,
1938
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_AWAY_TEAM,
1939
+
1940
+ // Total odd/even per team period
1941
+ MarketType.FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1942
+ MarketType.SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1943
+ MarketType.THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1944
+ MarketType.FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN,
1945
+ MarketType.FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
1946
+ MarketType.SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN,
1779
1947
  ];
1780
1948
 
1781
1949
  export const SCORE_MARKET_TYPES = [
@@ -1877,6 +2045,118 @@ export const FOOTBALL_MARKET_TYPES = [
1877
2045
  MarketType.FOURTH_PERIOD_TOTAL_TOUCHDOWNS,
1878
2046
  MarketType.FOURTH_PERIOD_TOTAL_TOUCHDOWNS_HOME_TEAM,
1879
2047
  MarketType.FOURTH_PERIOD_TOTAL_TOUCHDOWNS_AWAY_TEAM,
2048
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS,
2049
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS,
2050
+ MarketType.TOTAL_FIELD_GOALS_HOME_TEAM,
2051
+ MarketType.TOTAL_FIELD_GOALS_AWAY_TEAM,
2052
+ MarketType.TOTAL_RUSHING_YARDS_HOME_TEAM,
2053
+ MarketType.TOTAL_RUSHING_YARDS_AWAY_TEAM,
2054
+ MarketType.TOTAL_RECEIVING_YARDS_HOME_TEAM,
2055
+ MarketType.TOTAL_RECEIVING_YARDS_AWAY_TEAM,
2056
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_HOME_TEAM,
2057
+ MarketType.TOTAL_RUSHING_TOUCHDOWNS_AWAY_TEAM,
2058
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_HOME_TEAM,
2059
+ MarketType.TOTAL_RECEIVING_TOUCHDOWNS_AWAY_TEAM,
2060
+ ];
2061
+
2062
+ export const RACE_TO_MARKET_TYPES = [
2063
+ // Race to points
2064
+ MarketType.RACE_TO_5_POINTS,
2065
+ MarketType.RACE_TO_6_POINTS,
2066
+ MarketType.RACE_TO_7_POINTS,
2067
+ MarketType.RACE_TO_9_POINTS,
2068
+ MarketType.RACE_TO_10_POINTS,
2069
+ MarketType.RACE_TO_12_POINTS,
2070
+ MarketType.RACE_TO_15_POINTS,
2071
+ MarketType.RACE_TO_20_POINTS,
2072
+ MarketType.RACE_TO_25_POINTS,
2073
+ MarketType.RACE_TO_28_POINTS,
2074
+ MarketType.RACE_TO_30_POINTS,
2075
+ MarketType.RACE_TO_35_POINTS,
2076
+
2077
+ // Race to points 1st half
2078
+ MarketType.FIRST_PERIOD_RACE_TO_5_POINTS2,
2079
+ MarketType.FIRST_PERIOD_RACE_TO_6_POINTS2,
2080
+ MarketType.FIRST_PERIOD_RACE_TO_7_POINTS2,
2081
+ MarketType.FIRST_PERIOD_RACE_TO_9_POINTS2,
2082
+ MarketType.FIRST_PERIOD_RACE_TO_10_POINTS2,
2083
+ MarketType.FIRST_PERIOD_RACE_TO_12_POINTS2,
2084
+ MarketType.FIRST_PERIOD_RACE_TO_15_POINTS2,
2085
+ MarketType.FIRST_PERIOD_RACE_TO_20_POINTS2,
2086
+ MarketType.FIRST_PERIOD_RACE_TO_25_POINTS2,
2087
+ MarketType.FIRST_PERIOD_RACE_TO_28_POINTS2,
2088
+ MarketType.FIRST_PERIOD_RACE_TO_30_POINTS2,
2089
+ MarketType.FIRST_PERIOD_RACE_TO_35_POINTS2,
2090
+
2091
+ // Race to points 2nd half
2092
+ MarketType.SECOND_PERIOD_RACE_TO_5_POINTS2,
2093
+ MarketType.SECOND_PERIOD_RACE_TO_6_POINTS2,
2094
+ MarketType.SECOND_PERIOD_RACE_TO_7_POINTS2,
2095
+ MarketType.SECOND_PERIOD_RACE_TO_9_POINTS2,
2096
+ MarketType.SECOND_PERIOD_RACE_TO_10_POINTS2,
2097
+ MarketType.SECOND_PERIOD_RACE_TO_12_POINTS2,
2098
+ MarketType.SECOND_PERIOD_RACE_TO_15_POINTS2,
2099
+ MarketType.SECOND_PERIOD_RACE_TO_20_POINTS2,
2100
+ MarketType.SECOND_PERIOD_RACE_TO_25_POINTS2,
2101
+ MarketType.SECOND_PERIOD_RACE_TO_28_POINTS2,
2102
+ MarketType.SECOND_PERIOD_RACE_TO_30_POINTS2,
2103
+ MarketType.SECOND_PERIOD_RACE_TO_35_POINTS2,
2104
+
2105
+ // Race to points 1st quarter
2106
+ MarketType.FIRST_PERIOD_RACE_TO_5_POINTS,
2107
+ MarketType.FIRST_PERIOD_RACE_TO_6_POINTS,
2108
+ MarketType.FIRST_PERIOD_RACE_TO_7_POINTS,
2109
+ MarketType.FIRST_PERIOD_RACE_TO_9_POINTS,
2110
+ MarketType.FIRST_PERIOD_RACE_TO_10_POINTS,
2111
+ MarketType.FIRST_PERIOD_RACE_TO_12_POINTS,
2112
+ MarketType.FIRST_PERIOD_RACE_TO_15_POINTS,
2113
+ MarketType.FIRST_PERIOD_RACE_TO_20_POINTS,
2114
+ MarketType.FIRST_PERIOD_RACE_TO_25_POINTS,
2115
+ MarketType.FIRST_PERIOD_RACE_TO_28_POINTS,
2116
+ MarketType.FIRST_PERIOD_RACE_TO_30_POINTS,
2117
+ MarketType.FIRST_PERIOD_RACE_TO_35_POINTS,
2118
+
2119
+ // Race to points 2nd quarter
2120
+ MarketType.SECOND_PERIOD_RACE_TO_5_POINTS,
2121
+ MarketType.SECOND_PERIOD_RACE_TO_6_POINTS,
2122
+ MarketType.SECOND_PERIOD_RACE_TO_7_POINTS,
2123
+ MarketType.SECOND_PERIOD_RACE_TO_9_POINTS,
2124
+ MarketType.SECOND_PERIOD_RACE_TO_10_POINTS,
2125
+ MarketType.SECOND_PERIOD_RACE_TO_12_POINTS,
2126
+ MarketType.SECOND_PERIOD_RACE_TO_15_POINTS,
2127
+ MarketType.SECOND_PERIOD_RACE_TO_20_POINTS,
2128
+ MarketType.SECOND_PERIOD_RACE_TO_25_POINTS,
2129
+ MarketType.SECOND_PERIOD_RACE_TO_28_POINTS,
2130
+ MarketType.SECOND_PERIOD_RACE_TO_30_POINTS,
2131
+ MarketType.SECOND_PERIOD_RACE_TO_35_POINTS,
2132
+
2133
+ // Race to points 3rd quarter
2134
+ MarketType.THIRD_PERIOD_RACE_TO_5_POINTS,
2135
+ MarketType.THIRD_PERIOD_RACE_TO_6_POINTS,
2136
+ MarketType.THIRD_PERIOD_RACE_TO_7_POINTS,
2137
+ MarketType.THIRD_PERIOD_RACE_TO_9_POINTS,
2138
+ MarketType.THIRD_PERIOD_RACE_TO_10_POINTS,
2139
+ MarketType.THIRD_PERIOD_RACE_TO_12_POINTS,
2140
+ MarketType.THIRD_PERIOD_RACE_TO_15_POINTS,
2141
+ MarketType.THIRD_PERIOD_RACE_TO_20_POINTS,
2142
+ MarketType.THIRD_PERIOD_RACE_TO_25_POINTS,
2143
+ MarketType.THIRD_PERIOD_RACE_TO_28_POINTS,
2144
+ MarketType.THIRD_PERIOD_RACE_TO_30_POINTS,
2145
+ MarketType.THIRD_PERIOD_RACE_TO_35_POINTS,
2146
+
2147
+ // Race to points 4th quarter
2148
+ MarketType.FOURTH_PERIOD_RACE_TO_5_POINTS,
2149
+ MarketType.FOURTH_PERIOD_RACE_TO_6_POINTS,
2150
+ MarketType.FOURTH_PERIOD_RACE_TO_7_POINTS,
2151
+ MarketType.FOURTH_PERIOD_RACE_TO_9_POINTS,
2152
+ MarketType.FOURTH_PERIOD_RACE_TO_10_POINTS,
2153
+ MarketType.FOURTH_PERIOD_RACE_TO_12_POINTS,
2154
+ MarketType.FOURTH_PERIOD_RACE_TO_15_POINTS,
2155
+ MarketType.FOURTH_PERIOD_RACE_TO_20_POINTS,
2156
+ MarketType.FOURTH_PERIOD_RACE_TO_25_POINTS,
2157
+ MarketType.FOURTH_PERIOD_RACE_TO_28_POINTS,
2158
+ MarketType.FOURTH_PERIOD_RACE_TO_30_POINTS,
2159
+ MarketType.FOURTH_PERIOD_RACE_TO_35_POINTS,
1880
2160
  ];
1881
2161
 
1882
2162
  export const DARTS_MARKET_TYPES = [
@@ -155,6 +155,21 @@ export enum MarketType {
155
155
  EIGHTH_PERIOD_TOTAL2_ODD_EVEN = 10098,
156
156
  NINTH_PERIOD_TOTAL2_ODD_EVEN = 10099,
157
157
 
158
+ // Total odd/even per team period - quarter for football/basketball
159
+ FIRST_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN = 10674,
160
+ FIRST_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN = 10675,
161
+ SECOND_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN = 10676,
162
+ SECOND_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN = 10677,
163
+ THIRD_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN = 10678,
164
+ THIRD_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN = 10679,
165
+ FOURTH_PERIOD_TOTAL_HOME_TEAM_ODD_EVEN = 10680,
166
+ FOURTH_PERIOD_TOTAL_AWAY_TEAM_ODD_EVEN = 10681,
167
+ // Total odd/even per team period - half for football/basketball
168
+ FIRST_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN = 10670,
169
+ FIRST_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN = 10671,
170
+ SECOND_PERIOD_TOTAL2_HOME_TEAM_ODD_EVEN = 10672,
171
+ SECOND_PERIOD_TOTAL2_AWAY_TEAM_ODD_EVEN = 10673,
172
+
158
173
  // Double chance
159
174
  DOUBLE_CHANCE = 10003,
160
175
  // Double chance period - half for soccer
@@ -528,6 +543,19 @@ export enum MarketType {
528
543
  TOTAL_TOUCHDOWNS = 10194,
529
544
  TOTAL_TOUCHDOWNS_HOME_TEAM = 10195,
530
545
  TOTAL_TOUCHDOWNS_AWAY_TEAM = 10196,
546
+ TOTAL_RUSHING_TOUCHDOWNS = 10807,
547
+ TOTAL_RECEIVING_TOUCHDOWNS = 10808,
548
+ // Football totals per team
549
+ TOTAL_FIELD_GOALS_HOME_TEAM = 10797,
550
+ TOTAL_FIELD_GOALS_AWAY_TEAM = 10798,
551
+ TOTAL_RUSHING_YARDS_HOME_TEAM = 10799,
552
+ TOTAL_RUSHING_YARDS_AWAY_TEAM = 10800,
553
+ TOTAL_RECEIVING_YARDS_HOME_TEAM = 10801,
554
+ TOTAL_RECEIVING_YARDS_AWAY_TEAM = 10802,
555
+ TOTAL_RUSHING_TOUCHDOWNS_HOME_TEAM = 10803,
556
+ TOTAL_RUSHING_TOUCHDOWNS_AWAY_TEAM = 10804,
557
+ TOTAL_RECEIVING_TOUCHDOWNS_HOME_TEAM = 10805,
558
+ TOTAL_RECEIVING_TOUCHDOWNS_AWAY_TEAM = 10806,
531
559
 
532
560
  // Period-specific football totals
533
561
  // First period
@@ -562,6 +590,100 @@ export enum MarketType {
562
590
  FOURTH_PERIOD_TOTAL_TOUCHDOWNS_HOME_TEAM = 10435,
563
591
  FOURTH_PERIOD_TOTAL_TOUCHDOWNS_AWAY_TEAM = 10436,
564
592
 
593
+ // Race to points
594
+ RACE_TO_5_POINTS = 10713,
595
+ RACE_TO_6_POINTS = 10714,
596
+ RACE_TO_7_POINTS = 10715,
597
+ RACE_TO_9_POINTS = 10716,
598
+ RACE_TO_10_POINTS = 10717,
599
+ RACE_TO_12_POINTS = 10718,
600
+ RACE_TO_15_POINTS = 10719,
601
+ RACE_TO_20_POINTS = 10720,
602
+ RACE_TO_25_POINTS = 10721,
603
+ RACE_TO_28_POINTS = 10722,
604
+ RACE_TO_30_POINTS = 10723,
605
+ RACE_TO_35_POINTS = 10724,
606
+
607
+ // Race to points period - half for football/basketball
608
+ FIRST_PERIOD_RACE_TO_5_POINTS2 = 10725,
609
+ FIRST_PERIOD_RACE_TO_6_POINTS2 = 10726,
610
+ FIRST_PERIOD_RACE_TO_7_POINTS2 = 10727,
611
+ FIRST_PERIOD_RACE_TO_9_POINTS2 = 10728,
612
+ FIRST_PERIOD_RACE_TO_10_POINTS2 = 10729,
613
+ FIRST_PERIOD_RACE_TO_12_POINTS2 = 10730,
614
+ FIRST_PERIOD_RACE_TO_15_POINTS2 = 10731,
615
+ FIRST_PERIOD_RACE_TO_20_POINTS2 = 10732,
616
+ FIRST_PERIOD_RACE_TO_25_POINTS2 = 10733,
617
+ FIRST_PERIOD_RACE_TO_28_POINTS2 = 10734,
618
+ FIRST_PERIOD_RACE_TO_30_POINTS2 = 10735,
619
+ FIRST_PERIOD_RACE_TO_35_POINTS2 = 10736,
620
+
621
+ SECOND_PERIOD_RACE_TO_5_POINTS2 = 10737,
622
+ SECOND_PERIOD_RACE_TO_6_POINTS2 = 10738,
623
+ SECOND_PERIOD_RACE_TO_7_POINTS2 = 10739,
624
+ SECOND_PERIOD_RACE_TO_9_POINTS2 = 10740,
625
+ SECOND_PERIOD_RACE_TO_10_POINTS2 = 10741,
626
+ SECOND_PERIOD_RACE_TO_12_POINTS2 = 10742,
627
+ SECOND_PERIOD_RACE_TO_15_POINTS2 = 10743,
628
+ SECOND_PERIOD_RACE_TO_20_POINTS2 = 10744,
629
+ SECOND_PERIOD_RACE_TO_25_POINTS2 = 10745,
630
+ SECOND_PERIOD_RACE_TO_28_POINTS2 = 10746,
631
+ SECOND_PERIOD_RACE_TO_30_POINTS2 = 10747,
632
+ SECOND_PERIOD_RACE_TO_35_POINTS2 = 10748,
633
+
634
+ // Race to points period - quarter for football/basketball
635
+ FIRST_PERIOD_RACE_TO_5_POINTS = 10749,
636
+ FIRST_PERIOD_RACE_TO_6_POINTS = 10750,
637
+ FIRST_PERIOD_RACE_TO_7_POINTS = 10751,
638
+ FIRST_PERIOD_RACE_TO_9_POINTS = 10752,
639
+ FIRST_PERIOD_RACE_TO_10_POINTS = 10753,
640
+ FIRST_PERIOD_RACE_TO_12_POINTS = 10754,
641
+ FIRST_PERIOD_RACE_TO_15_POINTS = 10755,
642
+ FIRST_PERIOD_RACE_TO_20_POINTS = 10756,
643
+ FIRST_PERIOD_RACE_TO_25_POINTS = 10757,
644
+ FIRST_PERIOD_RACE_TO_28_POINTS = 10758,
645
+ FIRST_PERIOD_RACE_TO_30_POINTS = 10759,
646
+ FIRST_PERIOD_RACE_TO_35_POINTS = 10760,
647
+
648
+ SECOND_PERIOD_RACE_TO_5_POINTS = 10761,
649
+ SECOND_PERIOD_RACE_TO_6_POINTS = 10762,
650
+ SECOND_PERIOD_RACE_TO_7_POINTS = 10763,
651
+ SECOND_PERIOD_RACE_TO_9_POINTS = 10764,
652
+ SECOND_PERIOD_RACE_TO_10_POINTS = 10765,
653
+ SECOND_PERIOD_RACE_TO_12_POINTS = 10766,
654
+ SECOND_PERIOD_RACE_TO_15_POINTS = 10767,
655
+ SECOND_PERIOD_RACE_TO_20_POINTS = 10768,
656
+ SECOND_PERIOD_RACE_TO_25_POINTS = 10769,
657
+ SECOND_PERIOD_RACE_TO_28_POINTS = 10770,
658
+ SECOND_PERIOD_RACE_TO_30_POINTS = 10771,
659
+ SECOND_PERIOD_RACE_TO_35_POINTS = 10772,
660
+
661
+ THIRD_PERIOD_RACE_TO_5_POINTS = 10773,
662
+ THIRD_PERIOD_RACE_TO_6_POINTS = 10774,
663
+ THIRD_PERIOD_RACE_TO_7_POINTS = 10775,
664
+ THIRD_PERIOD_RACE_TO_9_POINTS = 10776,
665
+ THIRD_PERIOD_RACE_TO_10_POINTS = 10777,
666
+ THIRD_PERIOD_RACE_TO_12_POINTS = 10778,
667
+ THIRD_PERIOD_RACE_TO_15_POINTS = 10779,
668
+ THIRD_PERIOD_RACE_TO_20_POINTS = 10780,
669
+ THIRD_PERIOD_RACE_TO_25_POINTS = 10781,
670
+ THIRD_PERIOD_RACE_TO_28_POINTS = 10782,
671
+ THIRD_PERIOD_RACE_TO_30_POINTS = 10783,
672
+ THIRD_PERIOD_RACE_TO_35_POINTS = 10784,
673
+
674
+ FOURTH_PERIOD_RACE_TO_5_POINTS = 10785,
675
+ FOURTH_PERIOD_RACE_TO_6_POINTS = 10786,
676
+ FOURTH_PERIOD_RACE_TO_7_POINTS = 10787,
677
+ FOURTH_PERIOD_RACE_TO_9_POINTS = 10788,
678
+ FOURTH_PERIOD_RACE_TO_10_POINTS = 10789,
679
+ FOURTH_PERIOD_RACE_TO_12_POINTS = 10790,
680
+ FOURTH_PERIOD_RACE_TO_15_POINTS = 10791,
681
+ FOURTH_PERIOD_RACE_TO_20_POINTS = 10792,
682
+ FOURTH_PERIOD_RACE_TO_25_POINTS = 10793,
683
+ FOURTH_PERIOD_RACE_TO_28_POINTS = 10794,
684
+ FOURTH_PERIOD_RACE_TO_30_POINTS = 10795,
685
+ FOURTH_PERIOD_RACE_TO_35_POINTS = 10796,
686
+
565
687
  // SGP
566
688
  SGP_BUILDER_HOME = 90000,
567
689
  SGP_BUILDER_AWAY = 90001,
@@ -31,6 +31,7 @@ import {
31
31
  OTHER_YES_NO_MARKET_TYPES,
32
32
  PERIOD_MARKET_TYPES,
33
33
  PLAYER_PROPS_MARKET_TYPES,
34
+ RACE_TO_MARKET_TYPES,
34
35
  SCORE_MARKET_TYPES,
35
36
  SECOND_PERIOD_MARKET_TYPES,
36
37
  SECOND_PERIOD_MARKET_TYPES2,
@@ -103,6 +104,7 @@ export const isCorrectScoreMarket = (marketType: MarketType) => CORRECT_SCORE_MA
103
104
  export const isDrawAvailableMarket = (marketType: MarketType) =>
104
105
  WINNER_MARKET_TYPES.includes(marketType) ||
105
106
  SCORE_MARKET_TYPES.includes(marketType) ||
107
+ RACE_TO_MARKET_TYPES.includes(marketType) ||
106
108
  HIGHEST_SCORING_HALF_MARKET_TYPES.includes(marketType);
107
109
 
108
110
  export const isPeriodMarket = (marketType: MarketType) => PERIOD_MARKET_TYPES.includes(marketType);
@@ -125,6 +127,8 @@ export const isAwayTeamMarket = (marketType: MarketType) => AWAY_TEAM_MARKET_TYP
125
127
 
126
128
  export const isScoreMarket = (marketType: MarketType) => SCORE_MARKET_TYPES.includes(marketType);
127
129
 
130
+ export const isRaceToMarket = (marketType: MarketType) => RACE_TO_MARKET_TYPES.includes(marketType);
131
+
128
132
  export const isHighestScoringHalfMarket = (marketType: MarketType) =>
129
133
  HIGHEST_SCORING_HALF_MARKET_TYPES.includes(marketType);
130
134
 
@@ -5,6 +5,7 @@ import {
5
5
  DRAW_NO_BET_MARKET_TYPES,
6
6
  HOME_TEAM_MARKET_TYPES,
7
7
  METHOD_OF_VICTORY_MARKET_TYPES,
8
+ RACE_TO_MARKET_TYPES,
8
9
  SCORE_MARKET_TYPES,
9
10
  TOTAL_EXACT_MARKET_TYPES,
10
11
  TOTAL_ODD_EVEN_MARKET_TYPES,
@@ -332,6 +333,7 @@ const getOutcomeGroup = (marketType: MarketType, resultType?: ResultType): Outco
332
333
  if (YES_NO_OUTCOME_MARKET_TYPES.has(marketType)) return OutcomeGroup.YES_NO;
333
334
  if (TOTAL_ODD_EVEN_MARKET_TYPES.includes(marketType)) return OutcomeGroup.ODD_EVEN;
334
335
  if (SCORE_MARKET_TYPES.includes(marketType)) return OutcomeGroup.SCORE_HOME_AWAY_NO;
336
+ if (RACE_TO_MARKET_TYPES.includes(marketType)) return OutcomeGroup.SCORE_HOME_AWAY_NO;
335
337
  if (DOUBLE_CHANCE_MARKET_TYPES.includes(marketType)) return OutcomeGroup.DOUBLE_CHANCE;
336
338
  if (WINNER_MARKET_TYPES.includes(marketType)) {
337
339
  if (DRAW_NO_BET_MARKET_TYPES.includes(marketType)) return OutcomeGroup.WINNER_TWO_WAY;