be-components 6.3.1 → 6.3.3

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 (86) hide show
  1. package/lib/commonjs/Campaign/api/index.js +13 -0
  2. package/lib/commonjs/Campaign/api/index.js.map +1 -1
  3. package/lib/commonjs/Campaign/components/GolferAlert.js +135 -0
  4. package/lib/commonjs/Campaign/components/GolferAlert.js.map +1 -0
  5. package/lib/commonjs/Campaign/index.js +798 -2
  6. package/lib/commonjs/Campaign/index.js.map +1 -1
  7. package/lib/commonjs/Components/Jerseys.js +0 -1
  8. package/lib/commonjs/Components/Jerseys.js.map +1 -1
  9. package/lib/commonjs/FlashMarket/FlashHolder.js +12 -3
  10. package/lib/commonjs/FlashMarket/FlashHolder.js.map +1 -1
  11. package/lib/commonjs/FlashMarket/index.js +4 -2
  12. package/lib/commonjs/FlashMarket/index.js.map +1 -1
  13. package/lib/commonjs/Poll/api/index.js +10 -0
  14. package/lib/commonjs/Poll/api/index.js.map +1 -1
  15. package/lib/commonjs/Poll/index.js +4 -0
  16. package/lib/commonjs/Poll/index.js.map +1 -1
  17. package/lib/module/Campaign/api/index.js +13 -0
  18. package/lib/module/Campaign/api/index.js.map +1 -1
  19. package/lib/module/Campaign/components/GolferAlert.js +128 -0
  20. package/lib/module/Campaign/components/GolferAlert.js.map +1 -0
  21. package/lib/module/Campaign/index.js +800 -4
  22. package/lib/module/Campaign/index.js.map +1 -1
  23. package/lib/module/Components/Jerseys.js +0 -1
  24. package/lib/module/Components/Jerseys.js.map +1 -1
  25. package/lib/module/FlashMarket/FlashHolder.js +12 -3
  26. package/lib/module/FlashMarket/FlashHolder.js.map +1 -1
  27. package/lib/module/FlashMarket/index.js +4 -2
  28. package/lib/module/FlashMarket/index.js.map +1 -1
  29. package/lib/module/Poll/api/index.js +10 -0
  30. package/lib/module/Poll/api/index.js.map +1 -1
  31. package/lib/module/Poll/index.js +4 -0
  32. package/lib/module/Poll/index.js.map +1 -1
  33. package/lib/typescript/lib/commonjs/Campaign/api/index.d.ts +1 -0
  34. package/lib/typescript/lib/commonjs/Campaign/api/index.d.ts.map +1 -1
  35. package/lib/typescript/lib/commonjs/Campaign/components/GolferAlert.d.ts +10 -0
  36. package/lib/typescript/lib/commonjs/Campaign/components/GolferAlert.d.ts.map +1 -0
  37. package/lib/typescript/lib/commonjs/Campaign/index.d.ts +2 -1
  38. package/lib/typescript/lib/commonjs/Campaign/index.d.ts.map +1 -1
  39. package/lib/typescript/lib/commonjs/Components/Jerseys.d.ts.map +1 -1
  40. package/lib/typescript/lib/commonjs/FlashMarket/FlashHolder.d.ts +5 -1
  41. package/lib/typescript/lib/commonjs/FlashMarket/FlashHolder.d.ts.map +1 -1
  42. package/lib/typescript/lib/commonjs/FlashMarket/index.d.ts +3 -1
  43. package/lib/typescript/lib/commonjs/FlashMarket/index.d.ts.map +1 -1
  44. package/lib/typescript/lib/commonjs/Poll/api/index.d.ts +1 -0
  45. package/lib/typescript/lib/commonjs/Poll/api/index.d.ts.map +1 -1
  46. package/lib/typescript/lib/commonjs/Poll/index.d.ts +2 -1
  47. package/lib/typescript/lib/commonjs/Poll/index.d.ts.map +1 -1
  48. package/lib/typescript/lib/module/Campaign/api/index.d.ts +1 -0
  49. package/lib/typescript/lib/module/Campaign/api/index.d.ts.map +1 -1
  50. package/lib/typescript/lib/module/Campaign/components/GolferAlert.d.ts +10 -0
  51. package/lib/typescript/lib/module/Campaign/components/GolferAlert.d.ts.map +1 -0
  52. package/lib/typescript/lib/module/Campaign/index.d.ts +2 -1
  53. package/lib/typescript/lib/module/Campaign/index.d.ts.map +1 -1
  54. package/lib/typescript/lib/module/Components/Jerseys.d.ts.map +1 -1
  55. package/lib/typescript/lib/module/FlashMarket/FlashHolder.d.ts +5 -1
  56. package/lib/typescript/lib/module/FlashMarket/FlashHolder.d.ts.map +1 -1
  57. package/lib/typescript/lib/module/FlashMarket/index.d.ts +3 -1
  58. package/lib/typescript/lib/module/FlashMarket/index.d.ts.map +1 -1
  59. package/lib/typescript/lib/module/Poll/api/index.d.ts +1 -0
  60. package/lib/typescript/lib/module/Poll/api/index.d.ts.map +1 -1
  61. package/lib/typescript/lib/module/Poll/index.d.ts +2 -1
  62. package/lib/typescript/lib/module/Poll/index.d.ts.map +1 -1
  63. package/lib/typescript/src/Campaign/api/index.d.ts +2 -1
  64. package/lib/typescript/src/Campaign/api/index.d.ts.map +1 -1
  65. package/lib/typescript/src/Campaign/components/GolferAlert.d.ts +12 -0
  66. package/lib/typescript/src/Campaign/components/GolferAlert.d.ts.map +1 -0
  67. package/lib/typescript/src/Campaign/index.d.ts +2 -1
  68. package/lib/typescript/src/Campaign/index.d.ts.map +1 -1
  69. package/lib/typescript/src/FlashMarket/FlashHolder.d.ts +5 -1
  70. package/lib/typescript/src/FlashMarket/FlashHolder.d.ts.map +1 -1
  71. package/lib/typescript/src/FlashMarket/index.d.ts +3 -1
  72. package/lib/typescript/src/FlashMarket/index.d.ts.map +1 -1
  73. package/lib/typescript/src/Poll/api/index.d.ts +1 -0
  74. package/lib/typescript/src/Poll/api/index.d.ts.map +1 -1
  75. package/lib/typescript/src/Poll/index.d.ts +2 -1
  76. package/lib/typescript/src/Poll/index.d.ts.map +1 -1
  77. package/package.json +1 -1
  78. package/src/Campaign/api/index.ts +10 -1
  79. package/src/Campaign/components/GolferAlert.tsx +74 -0
  80. package/src/Campaign/index.tsx +425 -9
  81. package/src/Components/Jerseys.tsx +1 -1
  82. package/src/FlashMarket/FlashHolder.tsx +10 -4
  83. package/src/FlashMarket/index.tsx +5 -3
  84. package/src/Poll/api/index.ts +8 -0
  85. package/src/Poll/index.tsx +5 -1
  86. package/src/types.d.ts +1 -1
@@ -20,16 +20,21 @@ var _Socket = _interopRequireDefault(require("../Socket"));
20
20
  var _NewPlayerAlert = _interopRequireDefault(require("./components/NewPlayerAlert"));
21
21
  var _ActionList = _interopRequireDefault(require("./components/ActionList"));
22
22
  var _Components = require("../Components");
23
+ var _api3 = require("../Poll/api");
24
+ var _FlashHolder = _interopRequireDefault(require("../FlashMarket/FlashHolder"));
25
+ var _GolferAlert = _interopRequireDefault(require("./components/GolferAlert"));
23
26
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
27
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
25
28
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
26
29
  const HEADER_HEIGHT = 75;
27
30
  const sections = ['header', 'prize', 'participants', 'toggle', 'desktop_data', 'mobile_ticker', 'mobile_player', 'mobile_leaderboard', 'engagements'];
31
+ //const golf_sections = ['header', 'closest_pin', 'sponsors']
28
32
  const Campaign = ({
29
33
  player_id,
30
34
  campaign_id,
31
35
  insets,
32
36
  color_mode,
37
+ mode,
33
38
  distinct_id,
34
39
  onSelectCompetition,
35
40
  onSelectPollCampaign,
@@ -41,6 +46,10 @@ const Campaign = ({
41
46
  }) => {
42
47
  const Colors = (0, _useColors.useColors)();
43
48
  const [needs_reload, setNeedsReload] = (0, _react.useState)(false);
49
+ const [golf_leader_size, setGolfLeaderSize] = (0, _react.useState)({
50
+ height: 0,
51
+ width: 0
52
+ });
44
53
  const [new_player_alert, setNewPlayerAlert] = (0, _react.useState)(undefined);
45
54
  const [new_bet_alert, setNewBetAlert] = (0, _react.useState)(undefined);
46
55
  //const [ refresh, setRefresh ] = useState(0);
@@ -70,6 +79,9 @@ const Campaign = ({
70
79
  leagues: [],
71
80
  tournaments: [],
72
81
  poll_campaigns: [],
82
+ flash_options: [],
83
+ flash_markets: [],
84
+ sponsors: [],
73
85
  competitions: [],
74
86
  matches: [],
75
87
  athletes: [],
@@ -84,8 +96,11 @@ const Campaign = ({
84
96
  orders,
85
97
  events,
86
98
  tournaments,
99
+ flash_options,
100
+ sponsors,
87
101
  athletes,
88
102
  competitions,
103
+ flash_markets,
89
104
  poll_campaigns,
90
105
  campaign,
91
106
  participant_page,
@@ -152,9 +167,17 @@ const Campaign = ({
152
167
  plsers = plsers.concat(await _api.CampaignApi.getPlayersByPlayerIds(needed_player_ids));
153
168
  //Set new bettor!!
154
169
  let new_player = cps.filter(cp => cp.status == 'active')[0];
155
- if (new_player && new_player.player_id != player_id) {
170
+ if (mode != 'golf' && new_player && new_player.player_id != player_id) {
156
171
  setNewPlayerAlert(new_player);
157
172
  }
173
+ if (mode == 'golf') {
174
+ //Old player
175
+ let exist = campaign_participants.find(cp => cp.campaign_participant_id == socket_participants[0]?.campaign_participant_id);
176
+ if (exist?.payload?.status == 'active' && campaign_participants[0]?.payload.status == 'closed') {
177
+ setNewPlayerAlert(new_player);
178
+ }
179
+ }
180
+
158
181
  //Ok! Now lets update the participants
159
182
  setEmbedState({
160
183
  ...embed_state,
@@ -215,8 +238,18 @@ const Campaign = ({
215
238
  }
216
239
  let comps = [];
217
240
  let pcs = [];
241
+ let fls = [];
242
+ let opts = [];
218
243
  if (c_resp.campaign && c_resp.campaign.poll_campaign_ids) {
219
244
  pcs = await _api.CampaignApi.getPollCampaignsByIds(c_resp.campaign.poll_campaign_ids);
245
+ let campaign_id = pcs[0]?.poll_campaign_id;
246
+ if (campaign_id) {
247
+ _api3.PollCampaignApi.setEnvironment();
248
+ let flash_resp = await _api3.PollApi.getPollsByCampaignId(campaign_id);
249
+ fls = flash_resp.polls;
250
+ let poll_ids = [...new Set(fls.map(p => p.poll_id))];
251
+ opts = await _api3.PollOptionApi.getPollOptionsByPollIds(poll_ids);
252
+ }
220
253
  }
221
254
  if (c_resp.campaign && c_resp.campaign.competition_ids) {
222
255
  comps = await _api.CampaignApi.getCompetitionsByIds(c_resp.campaign.competition_ids);
@@ -249,12 +282,16 @@ const Campaign = ({
249
282
  const tms = await _api2.MarketComponentApi.getTeamsByIds(tm_ids);
250
283
  const aths = await _api2.MarketComponentApi.getAthletesByIds(aths_ids);
251
284
  const lgs = await _api2.MarketComponentApi.getLeagues();
285
+ const spnsrs = await _api.CampaignApi.getCompaniesByIds(c_resp.campaign?.sponsors ?? []);
252
286
  setEmbedState({
253
287
  ...embed_state,
254
288
  players: pls,
255
289
  campaign: c_resp.campaign,
256
290
  campaign_participants: c_resp.campaign_participants,
257
291
  teams: tms,
292
+ sponsors: spnsrs,
293
+ flash_markets: fls,
294
+ flash_options: opts,
258
295
  leagues: lgs,
259
296
  competitions: comps,
260
297
  poll_campaigns: pcs,
@@ -353,6 +390,58 @@ const Campaign = ({
353
390
  }
354
391
  });
355
392
  };
393
+ const renderGolfers = data => {
394
+ const player = players.find(p => p.player_id == data.item.player_id);
395
+ if (!player) {
396
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
397
+ }
398
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
399
+ type: "row",
400
+ style: {
401
+ padding: 10,
402
+ borderBottomWidth: 1,
403
+ borderColor: Colors.borders.light
404
+ }
405
+ }, data.item.payload.status == 'active' ? /*#__PURE__*/_react.default.createElement(_Components.Icons.GolferIcon, {
406
+ size: 16,
407
+ color: Colors.text.h1
408
+ }) : data.item.payload.status == 'pending' ? /*#__PURE__*/_react.default.createElement(_Components.Icons.InProgressIcon, {
409
+ size: 16,
410
+ color: Colors.text.h1
411
+ }) : /*#__PURE__*/_react.default.createElement(_Components.Icons.LockClosedIcon, {
412
+ size: 16,
413
+ color: Colors.text.h1
414
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
415
+ style: {
416
+ flex: 1,
417
+ flexDirection: 'row',
418
+ marginLeft: 15
419
+ }
420
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
421
+ source: {
422
+ uri: player.profile_pic && player.profile_pic != '' ? player.profile_pic : 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
423
+ },
424
+ style: {
425
+ height: 35,
426
+ width: 35,
427
+ borderRadius: 100
428
+ }
429
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
430
+ style: {
431
+ flex: 1,
432
+ marginLeft: 10
433
+ }
434
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
435
+ theme: "h1"
436
+ }, player.first_name, " ", player.last_name), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
437
+ theme: "description",
438
+ style: {
439
+ marginTop: 3
440
+ }
441
+ }, "@", player.username))), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
442
+ theme: "h1"
443
+ }, data.item.payload.pin_distance));
444
+ };
356
445
  const renderEngagements = data => {
357
446
  switch (data.item.type) {
358
447
  case 'competition':
@@ -445,6 +534,165 @@ const Campaign = ({
445
534
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
446
535
  }
447
536
  };
537
+ const renderUpcomingGolfers = data => {
538
+ const options = flash_options.filter(o => o.poll_id == data.item.poll_id);
539
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
540
+ transparent: true,
541
+ style: {
542
+ flexDirection: 'row',
543
+ borderBottomWidth: 1,
544
+ borderColor: Colors.borders.light,
545
+ borderBottomLeftRadius: 8
546
+ }
547
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
548
+ type: "header",
549
+ style: {
550
+ padding: 20,
551
+ justifyContent: 'center',
552
+ alignItems: 'center',
553
+ borderRightWidth: 1,
554
+ borderColor: Colors.borders.light
555
+ }
556
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
557
+ theme: "description",
558
+ style: {
559
+ marginBottom: 4
560
+ }
561
+ }, "Group"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
562
+ theme: "h1"
563
+ }, data.item.priority)), options.sort((a, b) => a.priority - b.priority).map(o => {
564
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
565
+ transparent: true,
566
+ style: {
567
+ flex: 1,
568
+ justifyContent: 'center',
569
+ alignItems: 'center',
570
+ padding: 10,
571
+ borderRightWidth: 1,
572
+ borderColor: Colors.borders.light
573
+ }
574
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
575
+ source: {
576
+ uri: 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
577
+ },
578
+ style: {
579
+ height: 40,
580
+ width: 40
581
+ },
582
+ resizeMode: "cover"
583
+ }), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
584
+ theme: "h2",
585
+ style: {
586
+ marginTop: 4
587
+ },
588
+ textAlign: "center"
589
+ }, o.option_name));
590
+ }));
591
+ };
592
+ const renderClosedGolfers = data => {
593
+ const options = flash_options.filter(o => o.poll_id == data.item.poll_id);
594
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
595
+ transparent: true,
596
+ style: {
597
+ flexDirection: 'row',
598
+ borderBottomWidth: 1,
599
+ borderColor: Colors.borders.light,
600
+ borderBottomLeftRadius: 8
601
+ }
602
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
603
+ type: "header",
604
+ style: {
605
+ padding: 20,
606
+ justifyContent: 'center',
607
+ alignItems: 'center',
608
+ borderRightWidth: 1,
609
+ borderColor: Colors.borders.light
610
+ }
611
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
612
+ theme: "description",
613
+ style: {
614
+ marginBottom: 4
615
+ }
616
+ }, "Group"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
617
+ theme: "h1"
618
+ }, data.item.priority)), options.sort((a, b) => a.priority - b.priority).map(o => {
619
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
620
+ transparent: true,
621
+ style: {
622
+ flex: 1,
623
+ justifyContent: 'center',
624
+ alignItems: 'center',
625
+ padding: 10,
626
+ borderWidth: 1,
627
+ borderColor: o.result_ind == 'win' ? Colors.text.success : Colors.borders.light
628
+ }
629
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
630
+ source: {
631
+ uri: 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
632
+ },
633
+ style: {
634
+ height: 50,
635
+ width: 50
636
+ },
637
+ resizeMode: "cover"
638
+ }), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
639
+ theme: "h2",
640
+ style: {
641
+ marginTop: 4
642
+ },
643
+ textAlign: "center"
644
+ }, o.option_name));
645
+ }));
646
+ };
647
+ const renderPastPoll = data => {
648
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
649
+ style: {
650
+ flexGrow: 1,
651
+ padding: 10,
652
+ flexDirection: 'row',
653
+ alignItems: 'center'
654
+ }
655
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
656
+ theme: "h1"
657
+ }, data.item.poll_question));
658
+ };
659
+ const renderSponsors = data => {
660
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
661
+ float: true,
662
+ style: {
663
+ flexDirection: 'row',
664
+ alignItems: 'center',
665
+ minWidth: 300,
666
+ maxWidth: 350,
667
+ margin: 10,
668
+ padding: 10
669
+ }
670
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
671
+ source: {
672
+ uri: data.item.company_image?.url
673
+ },
674
+ style: {
675
+ height: 60,
676
+ width: 60,
677
+ backgroundColor: Colors.text.white,
678
+ borderRadius: 8
679
+ },
680
+ resizeMode: "center"
681
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
682
+ transparent: true,
683
+ style: {
684
+ flex: 1,
685
+ marginLeft: 10
686
+ }
687
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
688
+ theme: "h1"
689
+ }, data.item.company_name), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
690
+ theme: "description",
691
+ style: {
692
+ marginTop: 4
693
+ }
694
+ }, data.item.company_description)));
695
+ };
448
696
  const renderSections = data => {
449
697
  switch (data.item) {
450
698
  case 'header':
@@ -508,6 +756,150 @@ const Campaign = ({
508
756
  value: `https://play.bettoredge.com/social/campaign/${campaign_id}`,
509
757
  size: 65
510
758
  })) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null));
759
+ case 'closest_pin':
760
+ const active_poll = flash_markets[0]; //.find(m => m.flash_active);
761
+ const next_three = flash_markets.filter(m => m.priority > (active_poll?.priority ?? 0)).sort((a, b) => a.priority - b.priority).slice(0, 3);
762
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
763
+ style: {
764
+ flexDirection: 'row',
765
+ flexWrap: 'wrap'
766
+ }
767
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
768
+ nativeID: "pin_leaderboard",
769
+ style: {
770
+ flex: 1,
771
+ minWidth: 400
772
+ }
773
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, null, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
774
+ source: {
775
+ uri: 'https://res.cloudinary.com/hoabts6mc/image/upload/v1752434537/a95a5b63614b60844f9612cce6cc985a2ed2879c-1600x1067_bfgn61.jpg'
776
+ },
777
+ style: {
778
+ height: 400 * 0.6725,
779
+ width: 400
780
+ },
781
+ resizeMode: "cover"
782
+ }))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
783
+ style: {
784
+ minWidth: 400
785
+ }
786
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
787
+ data: campaign_participants.sort((a, b) => parseFloat(a.payload.pin_distance ?? 9999) - parseFloat(b.payload.pin_distance ?? 9999)),
788
+ key: 'closed_pin_leaders',
789
+ keyExtractor: item => item.campaign_participant_id,
790
+ renderItem: renderGolfers
791
+ })), /*#__PURE__*/_react.default.createElement(_Themed.View, {
792
+ nativeID: "flash",
793
+ style: {
794
+ flex: 4,
795
+ borderLeftWidth: 1,
796
+ borderColor: Colors.borders.light
797
+ }
798
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
799
+ type: "body",
800
+ style: {
801
+ flex: 1
802
+ }
803
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
804
+ style: {
805
+ flexDirection: 'row',
806
+ flex: 1
807
+ }
808
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
809
+ style: {
810
+ flex: 1
811
+ }
812
+ }, active_poll ? /*#__PURE__*/_react.default.createElement(_FlashHolder.default, {
813
+ poll_id: active_poll?.poll_id,
814
+ init_expanded: true,
815
+ hide_tabs: true,
816
+ onRequestAuthenticate: () => console.log(''),
817
+ onRequestLocation: () => console.log(''),
818
+ onFocusPosition: () => console.log('')
819
+ }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)), /*#__PURE__*/_react.default.createElement(_Themed.View, {
820
+ style: {
821
+ flex: 1,
822
+ borderLeftWidth: 1,
823
+ borderColor: Colors.borders.light
824
+ }
825
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
826
+ type: "header",
827
+ style: {
828
+ flexDirection: 'row',
829
+ alignItems: 'center',
830
+ padding: 10
831
+ }
832
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
833
+ transparent: true,
834
+ style: {
835
+ flex: 1
836
+ }
837
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
838
+ theme: "h1"
839
+ }, "Upcoming Groups"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
840
+ theme: "description",
841
+ style: {
842
+ marginTop: 8
843
+ }
844
+ }, "Bet on who will get closest to the pin!"))), /*#__PURE__*/_react.default.createElement(_Themed.View, null, next_three.map((p, i) => {
845
+ return renderUpcomingGolfers({
846
+ item: p,
847
+ index: i
848
+ });
849
+ })))))));
850
+ case 'last_ones':
851
+ const past_three = flash_markets.filter(m => m.priority > (active_poll?.priority ?? 0)).sort((a, b) => b.priority - a.priority).slice(0, 5);
852
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
853
+ style: {
854
+ flex: 1,
855
+ borderLeftWidth: 1,
856
+ borderColor: Colors.borders.light
857
+ }
858
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
859
+ type: "header",
860
+ style: {
861
+ flexDirection: 'row',
862
+ alignItems: 'center',
863
+ padding: 10
864
+ }
865
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
866
+ transparent: true,
867
+ style: {
868
+ flex: 1
869
+ }
870
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
871
+ theme: "h1"
872
+ }, "Upcoming Groups"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
873
+ theme: "description",
874
+ style: {
875
+ marginTop: 8
876
+ }
877
+ }, "Bet on who will get closest to the pin!"))), past_three.map((p, i) => {
878
+ return renderPastPoll({
879
+ item: p,
880
+ index: i
881
+ });
882
+ }));
883
+ case 'sponsors':
884
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
885
+ style: {
886
+ padding: 10,
887
+ borderTopWidth: 1,
888
+ borderColor: Colors.borders.light
889
+ }
890
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, null, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
891
+ theme: "h1"
892
+ }, "Sponsors"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
893
+ theme: "description",
894
+ style: {
895
+ marginTop: 4
896
+ }
897
+ }, "A massive thank you to all the amazing sponsors")), /*#__PURE__*/_react.default.createElement(_Components.AutoScrollingFlatList, {
898
+ data: sponsors,
899
+ renderItem: renderSponsors,
900
+ horizontal: true,
901
+ speed: 50
902
+ }));
511
903
  case 'prize':
512
904
  if (!campaign?.prize_description) {
513
905
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
@@ -685,6 +1077,411 @@ const Campaign = ({
685
1077
  const new_bet_event = events.find(e => e.event_id == new_bet_alert?.event_id);
686
1078
  const new_bet_tournament = tournaments.find(t => t.tournament_id == new_bet_alert?.event_id);
687
1079
  const new_bet_league = new_bet_event ? leagues.find(l => l.league_id == new_bet_event.league_id) : leagues.find(l => l.league_id == new_bet_tournament?.league_id);
1080
+ if (mode == 'golf') {
1081
+ const active_poll = flash_markets.filter(m => ['paused', 'active'].includes(m.status)).sort((a, b) => a.priority - b.priority)[0];
1082
+ const next_three = flash_markets.filter(m => m.priority > (active_poll?.priority ?? 0)).sort((a, b) => a.priority - b.priority).slice(0, 3);
1083
+ const past_three = flash_markets.filter(m => m.status == 'closed').sort((a, b) => b.priority - a.priority).slice(0, 3);
1084
+ const active_participant = campaign_participants.find(cp => cp.payload.status == 'active');
1085
+ const active_golfer = players.find(p => p.player_id == active_participant?.player_id);
1086
+ return /*#__PURE__*/_react.default.createElement(_Themed.View, {
1087
+ style: {
1088
+ flex: 1
1089
+ }
1090
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.ImageBackground, {
1091
+ style: {
1092
+ flex: 1
1093
+ },
1094
+ source: {
1095
+ uri: 'https://res.cloudinary.com/hoabts6mc/image/upload/v1752434537/a95a5b63614b60844f9612cce6cc985a2ed2879c-1600x1067_bfgn61.jpg'
1096
+ }
1097
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1098
+ type: "blur",
1099
+ style: {
1100
+ position: 'absolute',
1101
+ top: 0,
1102
+ left: 0,
1103
+ right: 0,
1104
+ bottom: 0
1105
+ }
1106
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1107
+ transparent: true,
1108
+ style: {
1109
+ flex: 1,
1110
+ flexDirection: 'row'
1111
+ }
1112
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1113
+ transparent: true,
1114
+ style: {
1115
+ flex: 2,
1116
+ margin: 10,
1117
+ minWidth: 350
1118
+ },
1119
+ onLayout: ev => {
1120
+ const {
1121
+ height,
1122
+ width
1123
+ } = ev.nativeEvent.layout;
1124
+ setGolfLeaderSize({
1125
+ height,
1126
+ width: width - 2
1127
+ });
1128
+ }
1129
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1130
+ float: true,
1131
+ style: {
1132
+ flex: 1
1133
+ }
1134
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1135
+ type: "header",
1136
+ style: {
1137
+ flexDirection: 'row',
1138
+ alignItems: 'center',
1139
+ padding: 10,
1140
+ borderTopRightRadius: 8,
1141
+ borderTopLeftRadius: 8
1142
+ }
1143
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1144
+ transparent: true,
1145
+ style: {
1146
+ flex: 1
1147
+ }
1148
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1149
+ theme: "h1"
1150
+ }, "On the Tee Now!"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1151
+ theme: "description"
1152
+ }, "Below are the current betting probabilities for the group on the tee!"))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1153
+ style: {
1154
+ flex: 1
1155
+ }
1156
+ }, active_poll ? /*#__PURE__*/_react.default.createElement(_FlashHolder.default, {
1157
+ poll_id: active_poll?.poll_id,
1158
+ init_expanded: true,
1159
+ hide_tabs: true,
1160
+ hide_timer: true,
1161
+ hide_footer: true,
1162
+ no_highlight: true,
1163
+ onRequestAuthenticate: () => console.log(''),
1164
+ onRequestLocation: () => console.log(''),
1165
+ onFocusPosition: () => console.log('')
1166
+ }) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1167
+ transparent: true
1168
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
1169
+ source: {
1170
+ uri: 'https://res.cloudinary.com/hoabts6mc/image/upload/v1752434537/a95a5b63614b60844f9612cce6cc985a2ed2879c-1600x1067_bfgn61.jpg'
1171
+ },
1172
+ style: {
1173
+ height: golf_leader_size.width * 0.6725,
1174
+ width: golf_leader_size.width,
1175
+ alignSelf: 'center',
1176
+ borderBottomRightRadius: 8,
1177
+ borderBottomLeftRadius: 8
1178
+ }
1179
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1180
+ transparent: true,
1181
+ style: {
1182
+ position: 'absolute',
1183
+ top: 0,
1184
+ left: 0,
1185
+ right: 0,
1186
+ bottom: 0,
1187
+ justifyContent: 'center',
1188
+ alignItems: 'center'
1189
+ }
1190
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1191
+ float: true,
1192
+ style: {
1193
+ padding: 20
1194
+ }
1195
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1196
+ theme: "h2",
1197
+ textAlign: "center"
1198
+ }, "Windsong Farm South Course"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1199
+ theme: "h1",
1200
+ style: {
1201
+ marginTop: 10
1202
+ },
1203
+ textAlign: "center"
1204
+ }, "Hole 16"), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1205
+ transparent: true,
1206
+ style: {
1207
+ marginTop: 10,
1208
+ padding: 10,
1209
+ justifyContent: 'center',
1210
+ alignItems: 'center'
1211
+ }
1212
+ }, /*#__PURE__*/_react.default.createElement(_reactQrCode.default, {
1213
+ value: `https://play.bettoredge.com/social/campaign/${campaign_id}`,
1214
+ size: 100,
1215
+ style: {
1216
+ backgroundColor: 'transparent'
1217
+ }
1218
+ }))))))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1219
+ float: true,
1220
+ style: {
1221
+ flex: 3,
1222
+ minWidth: 350,
1223
+ margin: 10
1224
+ }
1225
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1226
+ type: "header",
1227
+ style: {
1228
+ padding: 10,
1229
+ borderTopRightRadius: 8,
1230
+ borderTopLeftRadius: 8
1231
+ }
1232
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1233
+ transparent: true,
1234
+ style: {
1235
+ flex: 1
1236
+ }
1237
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1238
+ theme: "h1"
1239
+ }, "Closest to the hole #16"))), active_golfer ? /*#__PURE__*/_react.default.createElement(_Themed.View, {
1240
+ style: {
1241
+ backgroundColor: Colors.views.gold,
1242
+ padding: 10
1243
+ }
1244
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1245
+ theme: "h2"
1246
+ }, "Now On The Tee"), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1247
+ transparent: true,
1248
+ style: {
1249
+ flexDirection: 'row',
1250
+ marginTop: 5
1251
+ }
1252
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
1253
+ source: {
1254
+ uri: active_golfer.profile_pic && active_golfer.profile_pic != '' ? active_golfer.profile_pic : 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
1255
+ },
1256
+ style: {
1257
+ height: 35,
1258
+ width: 35,
1259
+ borderRadius: 100
1260
+ }
1261
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1262
+ transparent: true,
1263
+ style: {
1264
+ flex: 1,
1265
+ marginLeft: 10
1266
+ }
1267
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1268
+ theme: "h1",
1269
+ color: Colors.text.white
1270
+ }, active_golfer.first_name, " ", active_golfer.last_name), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1271
+ theme: "description",
1272
+ style: {
1273
+ marginTop: 3
1274
+ }
1275
+ }, "@", active_golfer.username)), /*#__PURE__*/_react.default.createElement(_Components.Icons.GolferIcon, {
1276
+ size: 28,
1277
+ color: Colors.text.white
1278
+ }))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1279
+ style: {
1280
+ flex: 1,
1281
+ borderBottomRightRadius: 8,
1282
+ borderBottomLeftRadius: 8
1283
+ }
1284
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1285
+ style: {
1286
+ padding: 10
1287
+ }
1288
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1289
+ theme: "h1"
1290
+ }, "LEADERBOARD"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1291
+ theme: "description",
1292
+ style: {
1293
+ marginTop: 4
1294
+ }
1295
+ }, "Closest to the pin - distance in feet from the pin")), /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
1296
+ data: campaign_participants.sort((a, b) => parseFloat(a.payload.pin_distance ? a.payload.pin_distance : 9999) - parseFloat(b.payload.pin_distance ? b.payload.pin_distance : 9999)),
1297
+ key: 'closed_pin_leaders',
1298
+ keyExtractor: item => item.campaign_participant_id,
1299
+ renderItem: renderGolfers
1300
+ })), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1301
+ type: "header",
1302
+ style: {
1303
+ padding: 10,
1304
+ borderTopWidth: 1,
1305
+ borderColor: Colors.borders.light,
1306
+ overflow: 'hidden',
1307
+ borderBottomRightRadius: 8,
1308
+ borderBottomLeftRadius: 8
1309
+ }
1310
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1311
+ transparent: true
1312
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1313
+ theme: "h1"
1314
+ }, "Sponsors"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1315
+ theme: "h2",
1316
+ style: {
1317
+ marginTop: 4
1318
+ }
1319
+ }, "A massive thank you to all the amazing sponsors")), /*#__PURE__*/_react.default.createElement(_Components.AutoScrollingFlatList, {
1320
+ data: sponsors,
1321
+ renderItem: renderSponsors,
1322
+ horizontal: true,
1323
+ speed: 20
1324
+ }))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1325
+ transparent: true,
1326
+ style: {
1327
+ flex: 4
1328
+ }
1329
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1330
+ float: true,
1331
+ nativeID: "next_up",
1332
+ style: {
1333
+ flexGrow: 1,
1334
+ margin: 10
1335
+ }
1336
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1337
+ type: "header",
1338
+ style: {
1339
+ flexDirection: 'row',
1340
+ alignItems: 'center',
1341
+ padding: 10,
1342
+ borderTopRightRadius: 8,
1343
+ borderTopLeftRadius: 8
1344
+ }
1345
+ }, /*#__PURE__*/_react.default.createElement(_Components.Icons.GolferIcon, {
1346
+ size: 28,
1347
+ color: Colors.text.h1
1348
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1349
+ transparent: true,
1350
+ style: {
1351
+ flex: 1,
1352
+ marginLeft: 10
1353
+ }
1354
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1355
+ theme: "h1"
1356
+ }, "Upcoming Groups"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1357
+ theme: "description",
1358
+ style: {
1359
+ marginTop: 3
1360
+ }
1361
+ }, "Groups that are soon to be up!"))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1362
+ style: {
1363
+ borderBottomRightRadius: 8,
1364
+ borderBottomLeftRadius: 8
1365
+ }
1366
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
1367
+ data: next_three.sort((a, b) => a.priority - b.priority),
1368
+ renderItem: renderUpcomingGolfers,
1369
+ key: 'next_up',
1370
+ keyExtractor: item => item.poll_id.toString()
1371
+ }))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1372
+ float: true,
1373
+ nativeID: "past",
1374
+ style: {
1375
+ flexGrow: 1,
1376
+ margin: 10
1377
+ }
1378
+ }, /*#__PURE__*/_react.default.createElement(_Themed.View, {
1379
+ type: "header",
1380
+ style: {
1381
+ flexDirection: 'row',
1382
+ alignItems: 'center',
1383
+ padding: 10,
1384
+ borderTopRightRadius: 8,
1385
+ borderTopLeftRadius: 8
1386
+ }
1387
+ }, /*#__PURE__*/_react.default.createElement(_Components.Icons.GolferIcon, {
1388
+ size: 28,
1389
+ color: Colors.text.h1
1390
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1391
+ transparent: true,
1392
+ style: {
1393
+ flex: 1,
1394
+ marginLeft: 10
1395
+ }
1396
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1397
+ theme: "h1"
1398
+ }, "Recently Completed Groups"), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1399
+ theme: "description",
1400
+ style: {
1401
+ marginTop: 3
1402
+ }
1403
+ }, "Winners from past groups!"))), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1404
+ style: {
1405
+ borderBottomRightRadius: 8,
1406
+ borderBottomLeftRadius: 8
1407
+ }
1408
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
1409
+ data: past_three.sort((a, b) => b.priority - a.priority),
1410
+ renderItem: renderClosedGolfers,
1411
+ key: 'past_up',
1412
+ keyExtractor: item => item.poll_id.toString()
1413
+ }))), campaign ? /*#__PURE__*/_react.default.createElement(_Themed.View, {
1414
+ type: "header",
1415
+ style: {
1416
+ margin: 10,
1417
+ flexDirection: 'row',
1418
+ alignItems: 'center',
1419
+ padding: 10,
1420
+ borderRadius: 8
1421
+ }
1422
+ }, /*#__PURE__*/_react.default.createElement(_reactNative.Image, {
1423
+ source: {
1424
+ uri: campaign.campaign_image?.url
1425
+ },
1426
+ style: {
1427
+ height: 80,
1428
+ width: 80,
1429
+ borderRadius: 8
1430
+ },
1431
+ resizeMode: "center"
1432
+ }), /*#__PURE__*/_react.default.createElement(_Themed.View, {
1433
+ transparent: true,
1434
+ style: {
1435
+ flex: 1,
1436
+ marginLeft: 20
1437
+ }
1438
+ }, /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1439
+ theme: "h1",
1440
+ size: 18
1441
+ }, campaign.campaign_name), /*#__PURE__*/_react.default.createElement(_Themed.Text, {
1442
+ theme: "description",
1443
+ style: {
1444
+ marginTop: 4
1445
+ }
1446
+ }, campaign.description))) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null)))), new_player_alert && new_player ? /*#__PURE__*/_react.default.createElement(_Themed.View, {
1447
+ type: "blur",
1448
+ style: {
1449
+ position: 'absolute',
1450
+ top: 0,
1451
+ left: 0,
1452
+ right: 0,
1453
+ bottom: 0,
1454
+ alignItems: 'center',
1455
+ paddingTop: 100
1456
+ }
1457
+ }, /*#__PURE__*/_react.default.createElement(_GolferAlert.default, {
1458
+ campaign_participant: new_player_alert,
1459
+ player: new_player,
1460
+ view_mode: view_mode,
1461
+ onViewProfile: onViewProfile,
1462
+ onClose: () => setNewPlayerAlert(undefined)
1463
+ })) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null), /*#__PURE__*/_react.default.createElement(_Socket.default, {
1464
+ onConnect: () => {
1465
+ if (!needs_reload) {
1466
+ return;
1467
+ }
1468
+ },
1469
+ onDisconnect: () => setNeedsReload(true),
1470
+ subscribed_events: ['UPDATE_CAMPAIGN_PARTICIPANTS'],
1471
+ onSocketEvent: event => {
1472
+ switch (event.type) {
1473
+ case 'UPDATE_CAMPAIGN_PARTICIPANTS':
1474
+ let this_participants = event.campaign_participants.filter(cp => cp.campaign_id == campaign_id);
1475
+ if (this_participants.length == 0) {
1476
+ return;
1477
+ }
1478
+ return setSocketParticipants(event.campaign_participants);
1479
+ default:
1480
+ return;
1481
+ }
1482
+ }
1483
+ }));
1484
+ }
688
1485
  return /*#__PURE__*/_react.default.createElement(_Themed.View, {
689
1486
  style: {
690
1487
  flex: 1
@@ -777,7 +1574,6 @@ const Campaign = ({
777
1574
  if (!needs_reload) {
778
1575
  return;
779
1576
  }
780
- console.log('GET DATA!!!`');
781
1577
  },
782
1578
  onDisconnect: () => setNeedsReload(true),
783
1579
  subscribed_events: ['UPDATE_CAMPAIGN_PARTICIPANTS'],