be-components 4.5.5 → 4.5.6

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 (101) hide show
  1. package/lib/commonjs/Bracket/api/index.js +0 -2
  2. package/lib/commonjs/Bracket/api/index.js.map +1 -1
  3. package/lib/commonjs/Bracket/components/BracketCompetitionActions.js +8 -7
  4. package/lib/commonjs/Bracket/components/BracketCompetitionActions.js.map +1 -1
  5. package/lib/commonjs/Bracket/components/BracketPlay/BracketRound.js +2 -0
  6. package/lib/commonjs/Bracket/components/BracketPlay/BracketRound.js.map +1 -1
  7. package/lib/commonjs/Bracket/components/BracketPlay/index.js +0 -8
  8. package/lib/commonjs/Bracket/components/BracketPlay/index.js.map +1 -1
  9. package/lib/commonjs/Bracket/components/EditPlayerBracket.js +32 -3
  10. package/lib/commonjs/Bracket/components/EditPlayerBracket.js.map +1 -1
  11. package/lib/commonjs/Bracket/components/EnteredCompetitionsModal.js +197 -0
  12. package/lib/commonjs/Bracket/components/EnteredCompetitionsModal.js.map +1 -0
  13. package/lib/commonjs/Bracket/components/ManageBracketCompetitionForm.js +3 -3
  14. package/lib/commonjs/Bracket/components/ManageBracketCompetitionForm.js.map +1 -1
  15. package/lib/commonjs/Bracket/components/PlayerBracketCard.js +21 -4
  16. package/lib/commonjs/Bracket/components/PlayerBracketCard.js.map +1 -1
  17. package/lib/commonjs/Bracket/components/PlayerBrackets.js +27 -4
  18. package/lib/commonjs/Bracket/components/PlayerBrackets.js.map +1 -1
  19. package/lib/commonjs/Bracket/components/RoomHome.js +408 -107
  20. package/lib/commonjs/Bracket/components/RoomHome.js.map +1 -1
  21. package/lib/commonjs/Bracket/index.js +246 -420
  22. package/lib/commonjs/Bracket/index.js.map +1 -1
  23. package/lib/module/Bracket/api/index.js +0 -2
  24. package/lib/module/Bracket/api/index.js.map +1 -1
  25. package/lib/module/Bracket/components/BracketCompetitionActions.js +8 -7
  26. package/lib/module/Bracket/components/BracketCompetitionActions.js.map +1 -1
  27. package/lib/module/Bracket/components/BracketPlay/BracketRound.js +2 -0
  28. package/lib/module/Bracket/components/BracketPlay/BracketRound.js.map +1 -1
  29. package/lib/module/Bracket/components/BracketPlay/index.js +0 -8
  30. package/lib/module/Bracket/components/BracketPlay/index.js.map +1 -1
  31. package/lib/module/Bracket/components/EditPlayerBracket.js +33 -4
  32. package/lib/module/Bracket/components/EditPlayerBracket.js.map +1 -1
  33. package/lib/module/Bracket/components/EnteredCompetitionsModal.js +190 -0
  34. package/lib/module/Bracket/components/EnteredCompetitionsModal.js.map +1 -0
  35. package/lib/module/Bracket/components/ManageBracketCompetitionForm.js +3 -3
  36. package/lib/module/Bracket/components/ManageBracketCompetitionForm.js.map +1 -1
  37. package/lib/module/Bracket/components/PlayerBracketCard.js +21 -4
  38. package/lib/module/Bracket/components/PlayerBracketCard.js.map +1 -1
  39. package/lib/module/Bracket/components/PlayerBrackets.js +28 -5
  40. package/lib/module/Bracket/components/PlayerBrackets.js.map +1 -1
  41. package/lib/module/Bracket/components/RoomHome.js +410 -109
  42. package/lib/module/Bracket/components/RoomHome.js.map +1 -1
  43. package/lib/module/Bracket/index.js +247 -421
  44. package/lib/module/Bracket/index.js.map +1 -1
  45. package/lib/typescript/lib/commonjs/Bracket/api/index.d.ts.map +1 -1
  46. package/lib/typescript/lib/commonjs/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
  47. package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/BracketRound.d.ts.map +1 -1
  48. package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/index.d.ts +1 -2
  49. package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/index.d.ts.map +1 -1
  50. package/lib/typescript/lib/commonjs/Bracket/components/EditPlayerBracket.d.ts +3 -1
  51. package/lib/typescript/lib/commonjs/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
  52. package/lib/typescript/lib/commonjs/Bracket/components/EnteredCompetitionsModal.d.ts +14 -0
  53. package/lib/typescript/lib/commonjs/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
  54. package/lib/typescript/lib/commonjs/Bracket/components/PlayerBrackets.d.ts +4 -1
  55. package/lib/typescript/lib/commonjs/Bracket/components/PlayerBrackets.d.ts.map +1 -1
  56. package/lib/typescript/lib/commonjs/Bracket/components/RoomHome.d.ts +3 -14
  57. package/lib/typescript/lib/commonjs/Bracket/components/RoomHome.d.ts.map +1 -1
  58. package/lib/typescript/lib/commonjs/Bracket/index.d.ts.map +1 -1
  59. package/lib/typescript/lib/module/Bracket/api/index.d.ts.map +1 -1
  60. package/lib/typescript/lib/module/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
  61. package/lib/typescript/lib/module/Bracket/components/BracketPlay/BracketRound.d.ts.map +1 -1
  62. package/lib/typescript/lib/module/Bracket/components/BracketPlay/index.d.ts +1 -2
  63. package/lib/typescript/lib/module/Bracket/components/BracketPlay/index.d.ts.map +1 -1
  64. package/lib/typescript/lib/module/Bracket/components/EditPlayerBracket.d.ts +5 -2
  65. package/lib/typescript/lib/module/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
  66. package/lib/typescript/lib/module/Bracket/components/EnteredCompetitionsModal.d.ts +15 -0
  67. package/lib/typescript/lib/module/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
  68. package/lib/typescript/lib/module/Bracket/components/PlayerBracketCard.d.ts +3 -1
  69. package/lib/typescript/lib/module/Bracket/components/PlayerBracketCard.d.ts.map +1 -1
  70. package/lib/typescript/lib/module/Bracket/components/PlayerBrackets.d.ts +6 -2
  71. package/lib/typescript/lib/module/Bracket/components/PlayerBrackets.d.ts.map +1 -1
  72. package/lib/typescript/lib/module/Bracket/components/RoomHome.d.ts +3 -14
  73. package/lib/typescript/lib/module/Bracket/components/RoomHome.d.ts.map +1 -1
  74. package/lib/typescript/lib/module/Bracket/index.d.ts.map +1 -1
  75. package/lib/typescript/src/Bracket/api/index.d.ts.map +1 -1
  76. package/lib/typescript/src/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
  77. package/lib/typescript/src/Bracket/components/BracketPlay/index.d.ts +1 -2
  78. package/lib/typescript/src/Bracket/components/BracketPlay/index.d.ts.map +1 -1
  79. package/lib/typescript/src/Bracket/components/EditPlayerBracket.d.ts +8 -1
  80. package/lib/typescript/src/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
  81. package/lib/typescript/src/Bracket/components/EnteredCompetitionsModal.d.ts +21 -0
  82. package/lib/typescript/src/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
  83. package/lib/typescript/src/Bracket/components/PlayerBracketCard.d.ts +3 -2
  84. package/lib/typescript/src/Bracket/components/PlayerBracketCard.d.ts.map +1 -1
  85. package/lib/typescript/src/Bracket/components/PlayerBrackets.d.ts +9 -1
  86. package/lib/typescript/src/Bracket/components/PlayerBrackets.d.ts.map +1 -1
  87. package/lib/typescript/src/Bracket/components/RoomHome.d.ts +10 -18
  88. package/lib/typescript/src/Bracket/components/RoomHome.d.ts.map +1 -1
  89. package/lib/typescript/src/Bracket/index.d.ts.map +1 -1
  90. package/package.json +1 -1
  91. package/src/Bracket/api/index.ts +0 -2
  92. package/src/Bracket/components/BracketCompetitionActions.tsx +7 -6
  93. package/src/Bracket/components/BracketPlay/BracketRound.tsx +2 -2
  94. package/src/Bracket/components/BracketPlay/index.tsx +13 -18
  95. package/src/Bracket/components/EditPlayerBracket.tsx +58 -42
  96. package/src/Bracket/components/EnteredCompetitionsModal.tsx +113 -0
  97. package/src/Bracket/components/ManageBracketCompetitionForm.tsx +3 -3
  98. package/src/Bracket/components/PlayerBracketCard.tsx +9 -4
  99. package/src/Bracket/components/PlayerBrackets.tsx +45 -33
  100. package/src/Bracket/components/RoomHome.tsx +335 -112
  101. package/src/Bracket/index.tsx +280 -410
@@ -1,14 +1,12 @@
1
1
  import React, { useEffect, useState } from 'react';
2
- import { BracketApi, BracketComeptitionApi, BracketCompetitionHelpers } from './api';
2
+ import { BracketApi, BracketComeptitionApi } from './api';
3
3
  import BracketPlay from './components/BracketPlay';
4
4
  import { Button, Text, View } from '../Components/Themed';
5
5
  import { ActivityIndicator, FlatList, Image, Modal } from 'react-native';
6
6
  import BracketHeader from './components/BracketHeader';
7
7
  import RoomHome from './components/RoomHome';
8
8
  import BracketCompetitionActions from './components/BracketCompetitionActions';
9
- import EditPlayerBracket from './components/EditPlayerBracket';
10
9
  import { useColors } from '../constants/useColors';
11
- import PlayerBracketSelector from './components/PlayerBrackets';
12
10
  import { Icons } from '../Components';
13
11
  const sections = ['header', 'home', 'bracket_selector', 'bracket'];
14
12
  const MAX_WIDTH = 1200;
@@ -31,7 +29,16 @@ const BracketRoom = ({
31
29
  const [show_competition_actions, setShowCompetitionActions] = useState(false);
32
30
  let mode = width < 600 ? 'small' : width < 1500 ? 'medium' : 'large';
33
31
  let navigator_width = mode == 'large' ? 300 : mode == 'medium' ? 100 : 0;
32
+ const [play_data, setPlayData] = useState({
33
+ competition_player_brackets: [],
34
+ player_brackets: []
35
+ });
36
+ const {
37
+ player_brackets,
38
+ competition_player_brackets
39
+ } = play_data;
34
40
  const [local_balance, setLocalBalance] = useState(player_balance);
41
+ const [player, setPlayer] = useState(undefined);
35
42
  const [static_data, setStaticData] = useState({
36
43
  static_loaded: false,
37
44
  leagues: [],
@@ -42,90 +49,83 @@ const BracketRoom = ({
42
49
  leagues,
43
50
  static_loaded
44
51
  } = static_data;
45
- const [room_data, setRoomData] = useState({
46
- room_loaded: false,
47
- public_competitions: [],
48
- active_brackets: []
49
- });
50
- const {
51
- room_loaded,
52
- public_competitions,
53
- active_brackets
54
- } = room_data;
55
- const [show_pb_selector, setShowPBSelector] = useState(false);
56
- const [editing_player_bracket, setEditingPlayerBracket] = useState(undefined);
57
52
  const [nav_data, setNavData] = useState({
58
53
  active_nav: 'home'
59
54
  });
60
55
  const {
61
56
  active_nav,
62
57
  active_bracket_id,
63
- active_competition_id,
58
+ active_competition,
64
59
  active_player_bracket_id
65
60
  } = nav_data;
66
61
  let comp_action_width = mode != 'small' && active_bracket_id ? 300 : 0;
67
62
  let section_width = width - navigator_width - comp_action_width > MAX_WIDTH ? MAX_WIDTH : width - navigator_width - comp_action_width;
68
- const [my_data, setMyData] = useState({
69
- teams: [],
70
- athletes: [],
71
- player_brackets: [],
72
- brackets: [],
73
- bracket_competitions: [],
74
- competition_player_brackets: []
75
- });
76
- const {
77
- teams,
78
- athletes,
79
- brackets,
80
- bracket_competitions,
81
- player_brackets,
82
- competition_player_brackets,
83
- player
84
- } = my_data;
85
- const [my_admin_data, setMyAdminData] = useState({
86
- admin_offset: 0,
87
- admin_competitions: []
88
- });
89
- const {
90
- admin_competitions,
91
- admin_offset
92
- } = my_admin_data;
93
- const active_player_bracket = player_brackets.filter(pb => pb.status != 'deleted').find(pb => pb.player_bracket_id == active_player_bracket_id);
94
- const active_bracket = brackets.find(b => b.bracket_id == active_bracket_id);
95
- const active_competition = public_competitions.find(bc => bc.bracket_competition_id == active_competition_id);
63
+
96
64
  //Very First Time we Launch - do this
97
65
  useEffect(() => {
98
66
  BracketApi.setEnvironment();
99
- loadData(bracket_id, bracket_competition_id);
100
- }, [player_id, bracket_id, bracket_competition_id]);
101
-
102
- //DATA LOADING FUNCTIONS
103
- const loadData = async (bracket_id, bracket_competition_id) => {
104
- let pbs = [];
67
+ getStaticData();
68
+ }, []);
69
+ useEffect(() => {
105
70
  if (!static_loaded) {
106
- setLoading('Setting up the bracket room ...');
107
- await getStaticData();
71
+ return;
108
72
  }
109
- if (player_id) {
110
- setLoading('Getting your data ...');
111
- const my_response = await getMyData(player_id, bracket_id, bracket_competition_id);
112
- pbs = my_response?.player_brackets ?? [];
73
+ if (!player_id) {
74
+ return;
113
75
  }
114
- if (!room_loaded) {
115
- setLoading('Building the bracket ...');
116
- await getRoomData(pbs, bracket_id, bracket_competition_id);
76
+ getMyData();
77
+ }, [static_loaded, player_id]);
78
+ useEffect(() => {
79
+ if (!bracket_id && !bracket_competition_id) {
80
+ return;
117
81
  }
118
- setLoading(undefined);
119
- };
120
- const getAdminData = async page => {
121
- const admin_comps = await BracketComeptitionApi.getMyAdminCompetitions(page);
122
- setMyAdminData({
123
- admin_offset: page,
124
- admin_competitions: admin_comps
82
+ if (!static_loaded) {
83
+ return;
84
+ }
85
+ setUpInitData(bracket_id, bracket_competition_id);
86
+ }, [static_loaded, player_id, bracket_id, bracket_competition_id]);
87
+ const setUpInitData = async (bracket_id, bracket_competition_id) => {
88
+ let init_bracket_id = bracket_id;
89
+ let bc = undefined;
90
+ let active_pb_id = undefined;
91
+ if (bracket_competition_id) {
92
+ let resp = await BracketComeptitionApi.getBracketCompetitionById(bracket_competition_id);
93
+ bc = resp?.bracket_competition;
94
+ if (bc) {
95
+ init_bracket_id = bc.bracket_id;
96
+ }
97
+ }
98
+ if (player_id && init_bracket_id) {
99
+ //Get the play data for whaat is provided!!
100
+ const my_data = await BracketComeptitionApi.getMyPlayerBrackets(init_bracket_id);
101
+ //Try to find an already entered bracket
102
+ active_pb_id = my_data.competition_player_brackets.find(cpb => cpb.bracket_competition_id == bracket_competition_id)?.player_bracket_id;
103
+ if (!active_pb_id) {
104
+ //Pick a random one
105
+ active_pb_id = my_data.player_brackets[0]?.player_bracket_id;
106
+ }
107
+ setPlayData({
108
+ ...play_data,
109
+ player_brackets: my_data.player_brackets,
110
+ competition_player_brackets: my_data.competition_player_brackets
111
+ });
112
+ }
113
+ setNavData({
114
+ ...nav_data,
115
+ active_nav: 'bracket',
116
+ active_player_bracket_id: active_pb_id,
117
+ active_bracket_id: init_bracket_id,
118
+ active_competition: bc
125
119
  });
126
120
  };
121
+ const getMyData = async () => {
122
+ const pb = await BracketComeptitionApi.getMyBalance();
123
+ const pl = await BracketComeptitionApi.getMyDetails();
124
+ setLocalBalance(pb);
125
+ setPlayer(pl);
126
+ };
127
127
  const getStaticData = async () => {
128
- setLoading('Loading Bracket Data ...');
128
+ setLoading('Setting Up Bracket');
129
129
  const comp_options = await BracketComeptitionApi.getCompetitionOptions();
130
130
  const lgs = await BracketApi.getLeagues();
131
131
  setStaticData({
@@ -134,83 +134,22 @@ const BracketRoom = ({
134
134
  leagues: lgs,
135
135
  competition_result_types: comp_options.competition_result_types
136
136
  });
137
+ setTimeout(() => setLoading(undefined), 500);
137
138
  };
138
- const getRoomData = async (local_pbs, bracket_id, bracket_competition_id) => {
139
- let pub_competitions = await BracketComeptitionApi.getActivePublicBrackets();
140
- let pub_brackets = await BracketApi.getActiveBrackets();
141
- if (bracket_competition_id) {
142
- let bc = await BracketComeptitionApi.getBracketCompetitionById(bracket_competition_id);
143
- if (!bc) {
144
- return;
145
- }
146
- let pb = local_pbs.find(pb => pb.status != 'deleted' && pb.bracket_id == bc.bracket_competition.bracket_id);
147
- pub_competitions = pub_competitions.filter(pc => pc.bracket_competition_id != bc.bracket_competition.bracket_competition_id).concat(bc.bracket_competition);
148
- setNavData({
149
- ...nav_data,
150
- active_bracket_id: bc.bracket_competition.bracket_id,
151
- active_competition_id: bracket_competition_id,
152
- active_player_bracket_id: pb?.player_bracket_id,
153
- active_nav: 'bracket'
154
- });
155
- setRoomData({
156
- ...room_data,
157
- room_loaded: true,
158
- active_brackets: pub_brackets,
159
- public_competitions: pub_competitions.filter(pc => pc.status == 'scheduled')
160
- });
161
- if (mode == 'small') {
162
- return setShowCompetitionActions(true);
163
- }
164
- return;
165
- }
166
- if (bracket_id) {
167
- let pb = player_brackets.find(pb => pb.status != 'deleted' && pb.bracket_id == bracket_id);
168
- setNavData({
169
- ...nav_data,
170
- active_bracket_id: bracket_id,
171
- active_competition_id: undefined,
172
- active_player_bracket_id: pb?.player_bracket_id,
173
- active_nav: 'bracket'
174
- });
175
- }
176
- setRoomData({
177
- ...room_data,
178
- room_loaded: true,
179
- active_brackets: pub_brackets,
180
- public_competitions: pub_competitions.filter(pc => pc.status == 'scheduled')
139
+ const handleView = async (bracket_id, player_bracket_id, bracket_competition) => {
140
+ setNavData({
141
+ ...nav_data,
142
+ active_nav: 'bracket',
143
+ active_player_bracket_id: player_bracket_id,
144
+ active_bracket_id: bracket_id,
145
+ active_competition: bracket_competition
181
146
  });
182
- };
183
- const getMyData = async (player_id, bracket_id, bracket_competition_id) => {
184
- if (!player_id) {
185
- return;
186
- }
187
- let p = await BracketComeptitionApi.getMyDetails();
188
- let pb = await BracketComeptitionApi.getMyBalance();
189
- await getAdminData(0);
190
- setLocalBalance(pb);
191
- let my_resp = await BracketComeptitionApi.getMyPlayerBrackets();
192
- let champ_team_ids = my_resp.player_brackets.filter(pb => pb.champion_id_type == 'team').map(b => b.champion_id ?? '');
193
- const champ_teams = await BracketApi.getTeamsByIds(champ_team_ids);
194
- let champ_athlete_ids = my_resp.player_brackets.filter(pb => pb.champion_id_type == 'athlete').map(b => b.champion_id ?? '');
195
- const champ_athletes = await BracketApi.getAthletesByIds(champ_athlete_ids);
196
- //Now get more if there is a bracket_id or competition_id
197
- if (bracket_id || bracket_competition_id) {
198
- let bracket_pbs = await BracketComeptitionApi.getMyPlayerBrackets(bracket_id, bracket_competition_id);
199
- my_resp = BracketCompetitionHelpers.combinePlayerBrackets(my_resp, bracket_pbs);
200
- }
201
- //Get brackets
202
- let bks = await BracketApi.getBracketsByIds(my_resp.player_brackets.map(pb => pb.bracket_id));
203
- setMyData({
204
- ...my_data,
205
- athletes: champ_athletes,
206
- teams: champ_teams,
207
- brackets: bks,
208
- player: p,
209
- player_brackets: my_resp.player_brackets.filter(pb => pb.status != 'deleted'),
210
- bracket_competitions: my_resp.bracket_competitions,
211
- competition_player_brackets: my_resp.competition_player_brackets
147
+ const my_data = await BracketComeptitionApi.getMyPlayerBrackets(bracket_id);
148
+ setPlayData({
149
+ ...play_data,
150
+ player_brackets: my_data.player_brackets,
151
+ competition_player_brackets: my_data.competition_player_brackets
212
152
  });
213
- return my_resp;
214
153
  };
215
154
  const renderSections = data => {
216
155
  switch (data.item) {
@@ -218,53 +157,29 @@ const BracketRoom = ({
218
157
  return /*#__PURE__*/React.createElement(BracketHeader, {
219
158
  view_mode: view_mode,
220
159
  active_nav: active_nav,
221
- bracket: active_bracket,
222
- bracket_competition: active_competition,
160
+ bracket: undefined,
161
+ bracket_competition: undefined,
223
162
  onGoHome: () => setNavData({
224
163
  ...nav_data,
225
164
  active_bracket_id: undefined,
226
165
  active_nav: 'home',
227
- active_competition_id: undefined,
166
+ active_competition: undefined,
228
167
  active_player_bracket_id: undefined
229
168
  })
230
169
  });
231
170
  case 'home':
171
+ if (!static_loaded) {
172
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
173
+ }
232
174
  return /*#__PURE__*/React.createElement(RoomHome, {
233
175
  player: player,
176
+ visible: active_nav == 'home' ? true : false,
234
177
  width: section_width,
235
- admin_competitions: admin_competitions,
236
- onMoreAdmin: offset => getAdminData(offset),
237
- admin_offset: admin_offset,
238
- brackets: brackets,
239
178
  onManageCompetition: onManageCompetition,
240
- onUpdatePlayerBracket: new_pb => {
241
- setMyData({
242
- ...my_data,
243
- player_brackets: player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
244
- });
245
- },
246
179
  onCreateNewCompetition: onCreateNewCompetition,
247
- visible: active_nav == 'home' ? true : false,
248
- active_brackets: active_brackets,
249
180
  view_mode: view_mode,
250
- competition_result_types: competition_result_types,
251
181
  leagues: leagues,
252
- onEditPlayerBracket: pb => setEditingPlayerBracket(pb),
253
- onView: (bracket_id, player_bracket_id, bracket_competition_id) => {
254
- setNavData({
255
- ...nav_data,
256
- active_nav: 'bracket',
257
- active_player_bracket_id: player_bracket_id,
258
- active_bracket_id: bracket_id,
259
- active_competition_id: bracket_competition_id
260
- });
261
- },
262
- player_brackets: player_brackets.filter(pb => pb.status != 'deleted'),
263
- competition_player_brackets: competition_player_brackets.filter(cpb => cpb.status != 'deleted'),
264
- public_competitions: public_competitions,
265
- bracket_competitions: bracket_competitions,
266
- athletes: athletes,
267
- teams: teams
182
+ onView: handleView
268
183
  });
269
184
  case 'bracket':
270
185
  if (active_nav != 'bracket') {
@@ -274,19 +189,21 @@ const BracketRoom = ({
274
189
  return /*#__PURE__*/React.createElement(React.Fragment, null);
275
190
  }
276
191
  return /*#__PURE__*/React.createElement(BracketPlay, {
277
- width: section_width
278
- //player={player}
279
- ,
192
+ width: section_width,
193
+ player: player,
280
194
  onRequestAuthenticate: () => onRequestAuthenticate(active_competition?.auth_strategy_id),
281
- onEditPlayerBracket: pb => {
282
- setEditingPlayerBracket(pb);
283
- },
284
195
  onChangePlayerBracket: () => {
285
- setShowPBSelector(true);
196
+ setNavData({
197
+ ...nav_data,
198
+ active_nav: 'home',
199
+ active_bracket_id: undefined,
200
+ active_competition: undefined,
201
+ active_player_bracket_id: undefined
202
+ });
286
203
  },
287
204
  onPlayerBracketUpdate: (newpb, ncpbs) => {
288
- setMyData({
289
- ...my_data,
205
+ setPlayData({
206
+ ...play_data,
290
207
  player_brackets: player_brackets.filter(pb => pb.player_bracket_id != newpb.player_bracket_id).concat(newpb),
291
208
  competition_player_brackets: competition_player_brackets.filter(cpb => !ncpbs.find(ncpb => ncpb.competition_player_bracket_id == cpb.competition_player_bracket_id)).concat(ncpbs)
292
209
  });
@@ -321,24 +238,37 @@ const BracketRoom = ({
321
238
  data: sections,
322
239
  keyExtractor: item => item,
323
240
  refreshing: loading ? true : false,
324
- onRefresh: () => loadData(),
325
241
  key: 'bracket_sections',
326
242
  renderItem: renderSections
327
- })), mode == 'small' && active_bracket_id ? /*#__PURE__*/React.createElement(Button, {
328
- float: true,
243
+ })), /*#__PURE__*/React.createElement(Modal, {
244
+ visible: show_competition_actions,
245
+ transparent: true,
329
246
  style: {
330
- padding: 0,
331
- backgroundColor: Colors.text.action,
332
- borderBottomRightRadius: 0,
333
- borderBottomLeftRadius: 0
247
+ flex: 1
334
248
  },
335
- onPress: () => setShowCompetitionActions(true)
249
+ animationType: 'slide'
250
+ }, /*#__PURE__*/React.createElement(View, {
251
+ type: "blur",
252
+ style: {
253
+ flex: 1,
254
+ justifyContent: 'flex-end',
255
+ padding: 10,
256
+ paddingBottom: (insets?.bottom ?? 0) + 10
257
+ }
258
+ }, /*#__PURE__*/React.createElement(View, {
259
+ float: true,
260
+ style: {
261
+ maxHeight: 700
262
+ }
336
263
  }, active_competition ? /*#__PURE__*/React.createElement(View, {
337
264
  transparent: true,
338
265
  style: {
266
+ backgroundColor: Colors.text.action,
339
267
  flexDirection: 'row',
340
268
  alignItems: 'center',
341
- padding: 10
269
+ padding: 10,
270
+ borderTopRightRadius: 8,
271
+ borderTopLeftRadius: 8
342
272
  }
343
273
  }, /*#__PURE__*/React.createElement(Image, {
344
274
  source: {
@@ -365,128 +295,116 @@ const BracketRoom = ({
365
295
  theme: "description",
366
296
  color: Colors.text.white
367
297
  }, active_competition.competition_name)), /*#__PURE__*/React.createElement(Button, {
298
+ type: "text",
368
299
  float: true,
369
- disabled: true,
370
- type: "action",
371
- title: "VIEW",
372
- onPress: () => console.log('')
373
- })) : /*#__PURE__*/React.createElement(View, {
374
- transparent: true,
375
300
  style: {
301
+ padding: 10,
376
302
  flexDirection: 'row',
377
- alignItems: 'center',
378
- padding: 10
379
- }
380
- }, /*#__PURE__*/React.createElement(Icons.BracketIcon, {
381
- size: 20,
382
- color: Colors.text.white
383
- }), /*#__PURE__*/React.createElement(View, {
384
- transparent: true,
385
- style: {
386
- flex: 1,
387
- marginLeft: 10
388
- }
389
- }, /*#__PURE__*/React.createElement(Text, {
390
- theme: "h2",
391
- color: Colors.text.white
392
- }, "Available Competitions"), /*#__PURE__*/React.createElement(Text, {
393
- style: {
394
- marginTop: 3
303
+ alignItems: 'center'
395
304
  },
396
- theme: "description",
305
+ onPress: () => {
306
+ setShowCompetitionActions(false);
307
+ setTimeout(() => {
308
+ onShareCompetition(active_competition);
309
+ }, 500);
310
+ }
311
+ }, /*#__PURE__*/React.createElement(Icons.ShareIcon, {
312
+ size: 14,
397
313
  color: Colors.text.white
398
- }, "Press here to see eligible competitions to join!")), /*#__PURE__*/React.createElement(Button, {
399
- float: true,
400
- disabled: true,
401
- type: "action",
402
- title: "VIEW",
403
- onPress: () => console.log('')
404
- }))) : /*#__PURE__*/React.createElement(React.Fragment, null)), mode != 'small' && active_bracket_id ? /*#__PURE__*/React.createElement(View, {
405
- type: "header",
314
+ }))) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
406
315
  style: {
407
- width: 300
316
+ flexGrow: 1
408
317
  }
409
- }, /*#__PURE__*/React.createElement(BracketCompetitionActions, {
318
+ }, active_bracket_id ? /*#__PURE__*/React.createElement(BracketCompetitionActions, {
410
319
  view_mode: view_mode,
320
+ onRequestAuthenticate: () => onRequestAuthenticate(active_competition?.auth_strategy_id),
411
321
  player: player,
322
+ hide_image: true,
412
323
  onManage: onManageCompetition,
324
+ onCreateNewCompetition: bracket_id => {
325
+ if (!onCreateNewCompetition) {
326
+ return;
327
+ }
328
+ setShowCompetitionActions(false);
329
+ setTimeout(() => {
330
+ onCreateNewCompetition(bracket_id);
331
+ }, 500);
332
+ },
413
333
  insets: insets,
414
- onCreateNewCompetition: onCreateNewCompetition,
415
- onRequestAuthenticate: () => onRequestAuthenticate(active_competition?.auth_strategy_id),
416
- onSelectCompetition: bc => {
334
+ onFoundCompetition: bc => {
417
335
  setNavData({
418
336
  ...nav_data,
419
- active_competition_id: bc.bracket_competition_id
337
+ active_competition: bc,
338
+ active_bracket_id: bc.bracket_id
420
339
  });
421
340
  },
422
- onFoundCompetition: bc => {
423
- setRoomData({
424
- ...room_data,
425
- public_competitions: public_competitions.filter(pc => pc.bracket_competition_id != bc.bracket_competition_id).concat(bc)
426
- });
341
+ onSelectCompetition: async bc => {
427
342
  setNavData({
428
343
  ...nav_data,
429
- active_competition_id: bc.bracket_competition_id,
430
344
  active_bracket_id: bc.bracket_id,
431
- active_player_bracket_id: active_player_bracket?.bracket_id == bc.bracket_id ? active_player_bracket_id : player_brackets.find(pb => pb.status != 'deleted' && pb.bracket_id == bc.bracket_id)?.player_bracket_id
345
+ active_competition: bc
432
346
  });
433
347
  },
434
348
  onFocusPosition: onFocusPosition,
435
349
  player_brackets: player_brackets,
436
350
  onEnterCompetition: (new_bc, new_cpb, new_pb) => {
437
- setMyData({
438
- ...my_data,
439
- bracket_competitions: bracket_competitions.filter(bc => bc.bracket_competition_id != new_bc.bracket_competition_id).concat(new_bc),
440
- competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != new_cpb.competition_player_bracket_id).concat(new_cpb),
441
- player_brackets: !new_pb ? player_brackets : player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
442
- });
443
351
  if (new_pb) {
444
352
  setNavData({
445
353
  ...nav_data,
446
- active_player_bracket_id: new_pb.player_bracket_id
354
+ active_player_bracket_id: new_pb?.player_bracket_id,
355
+ active_competition: new_bc
447
356
  });
448
357
  }
358
+ setPlayData({
359
+ ...play_data,
360
+ player_brackets: new_pb ? player_brackets.concat(new_pb) : player_brackets,
361
+ competition_player_brackets: competition_player_brackets.concat(new_cpb)
362
+ });
363
+ },
364
+ competition_id: active_competition?.bracket_competition_id,
365
+ onLeaveCompetition: (bc, rem_cpb) => {
366
+ setNavData({
367
+ ...nav_data,
368
+ active_competition: bc
369
+ });
370
+ setPlayData({
371
+ ...play_data,
372
+ competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != rem_cpb.competition_player_bracket_id)
373
+ });
449
374
  },
450
- competition_id: active_competition_id,
451
- onLeaveCompetition: (new_bc, new_cpb) => setMyData({
452
- ...my_data,
453
- bracket_competitions: bracket_competitions.filter(bc => bc.bracket_competition_id != new_bc.bracket_competition_id).concat(new_bc),
454
- competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != new_cpb.competition_player_bracket_id).concat(new_cpb)
455
- }),
456
375
  competition_result_types: competition_result_types,
457
376
  bracket_id: active_bracket_id,
458
377
  player_balance: local_balance,
459
- player_bracket: active_player_bracket,
378
+ player_bracket: player_brackets.find(pb => pb.player_bracket_id == active_player_bracket_id),
460
379
  competition_player_brackets: competition_player_brackets
461
- })) : /*#__PURE__*/React.createElement(React.Fragment, null)), /*#__PURE__*/React.createElement(Modal, {
462
- visible: show_competition_actions,
463
- transparent: true,
380
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null)), /*#__PURE__*/React.createElement(View, {
381
+ type: "footer",
382
+ style: {
383
+ flexDirection: 'row',
384
+ padding: 10
385
+ }
386
+ }, /*#__PURE__*/React.createElement(Button, {
464
387
  style: {
465
388
  flex: 1
466
389
  },
467
- animationType: 'slide'
468
- }, /*#__PURE__*/React.createElement(View, {
469
- type: "blur",
470
- style: {
471
- flex: 1,
472
- justifyContent: 'flex-end',
473
- padding: 10,
474
- paddingBottom: (insets?.bottom ?? 0) + 10
475
- }
476
- }, /*#__PURE__*/React.createElement(View, {
390
+ title: "CLOSE",
391
+ type: "close",
392
+ onPress: () => setShowCompetitionActions(false)
393
+ }))))), mode == 'small' && active_bracket_id ? /*#__PURE__*/React.createElement(Button, {
477
394
  float: true,
478
395
  style: {
479
- maxHeight: 700
480
- }
396
+ padding: 0,
397
+ backgroundColor: Colors.text.action,
398
+ borderBottomRightRadius: 0,
399
+ borderBottomLeftRadius: 0
400
+ },
401
+ onPress: () => setShowCompetitionActions(true)
481
402
  }, active_competition ? /*#__PURE__*/React.createElement(View, {
482
403
  transparent: true,
483
404
  style: {
484
- backgroundColor: Colors.text.action,
485
405
  flexDirection: 'row',
486
406
  alignItems: 'center',
487
- padding: 10,
488
- borderTopRightRadius: 8,
489
- borderTopLeftRadius: 8
407
+ padding: 10
490
408
  }
491
409
  }, /*#__PURE__*/React.createElement(Image, {
492
410
  source: {
@@ -513,27 +431,48 @@ const BracketRoom = ({
513
431
  theme: "description",
514
432
  color: Colors.text.white
515
433
  }, active_competition.competition_name)), /*#__PURE__*/React.createElement(Button, {
516
- type: "text",
517
434
  float: true,
435
+ disabled: true,
436
+ type: "action",
437
+ title: "VIEW",
438
+ onPress: () => console.log('')
439
+ })) : /*#__PURE__*/React.createElement(View, {
440
+ transparent: true,
518
441
  style: {
519
- padding: 10,
520
442
  flexDirection: 'row',
521
- alignItems: 'center'
522
- },
523
- onPress: () => {
524
- setShowCompetitionActions(false);
525
- setTimeout(() => {
526
- onShareCompetition(active_competition);
527
- }, 500);
443
+ alignItems: 'center',
444
+ padding: 10
528
445
  }
529
- }, /*#__PURE__*/React.createElement(Icons.ShareIcon, {
530
- size: 14,
446
+ }, /*#__PURE__*/React.createElement(Icons.TrophyIcon, {
447
+ size: 20,
531
448
  color: Colors.text.white
532
- }))) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
449
+ }), /*#__PURE__*/React.createElement(View, {
450
+ transparent: true,
533
451
  style: {
534
- flexGrow: 1
452
+ flex: 1,
453
+ marginLeft: 10
535
454
  }
536
- }, active_bracket_id ? /*#__PURE__*/React.createElement(BracketCompetitionActions, {
455
+ }, /*#__PURE__*/React.createElement(Text, {
456
+ theme: "h2",
457
+ color: Colors.text.white
458
+ }, "Available Competitions"), /*#__PURE__*/React.createElement(Text, {
459
+ style: {
460
+ marginTop: 3
461
+ },
462
+ theme: "description",
463
+ color: Colors.text.white
464
+ }, "Press here to see eligible competitions to join!")), /*#__PURE__*/React.createElement(Button, {
465
+ float: true,
466
+ disabled: true,
467
+ type: "action",
468
+ title: "VIEW",
469
+ onPress: () => console.log('')
470
+ }))) : /*#__PURE__*/React.createElement(React.Fragment, null)), mode != 'small' && active_bracket_id ? /*#__PURE__*/React.createElement(View, {
471
+ type: "header",
472
+ style: {
473
+ width: 300
474
+ }
475
+ }, /*#__PURE__*/React.createElement(BracketCompetitionActions, {
537
476
  view_mode: view_mode,
538
477
  onRequestAuthenticate: () => onRequestAuthenticate(active_competition?.auth_strategy_id),
539
478
  player: player,
@@ -550,165 +489,52 @@ const BracketRoom = ({
550
489
  },
551
490
  insets: insets,
552
491
  onFoundCompetition: bc => {
553
- setRoomData({
554
- ...room_data,
555
- public_competitions: public_competitions.filter(pc => pc.bracket_competition_id != bc.bracket_competition_id).concat(bc)
556
- });
557
492
  setNavData({
558
493
  ...nav_data,
559
- active_competition_id: bc.bracket_competition_id,
560
- active_bracket_id: bc.bracket_id,
561
- active_player_bracket_id: active_player_bracket?.bracket_id == bc.bracket_id ? active_player_bracket_id : player_brackets.find(pb => pb.status != 'deleted' && pb.bracket_id == bc.bracket_id)?.player_bracket_id
494
+ active_competition: bc,
495
+ active_bracket_id: bc.bracket_id
562
496
  });
563
497
  },
564
- onSelectCompetition: bc => {
498
+ onSelectCompetition: async bc => {
565
499
  setNavData({
566
500
  ...nav_data,
567
- active_competition_id: bc.bracket_competition_id
501
+ active_bracket_id: bc.bracket_id,
502
+ active_competition: bc
568
503
  });
569
504
  },
570
505
  onFocusPosition: onFocusPosition,
571
506
  player_brackets: player_brackets,
572
507
  onEnterCompetition: (new_bc, new_cpb, new_pb) => {
573
- setMyData({
574
- ...my_data,
575
- bracket_competitions: bracket_competitions.filter(bc => bc.bracket_competition_id != new_bc.bracket_competition_id).concat(new_bc),
576
- competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != new_cpb.competition_player_bracket_id).concat(new_cpb),
577
- player_brackets: !new_pb ? player_brackets : player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
578
- });
579
508
  if (new_pb) {
580
509
  setNavData({
581
510
  ...nav_data,
582
- active_player_bracket_id: new_pb.player_bracket_id
511
+ active_player_bracket_id: new_pb?.player_bracket_id,
512
+ active_competition: new_bc
583
513
  });
584
514
  }
585
- },
586
- competition_id: active_competition_id,
587
- onLeaveCompetition: (new_bc, new_cpb) => setMyData({
588
- ...my_data,
589
- bracket_competitions: bracket_competitions.filter(bc => bc.bracket_competition_id != new_bc.bracket_competition_id).concat(new_bc),
590
- competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != new_cpb.competition_player_bracket_id).concat(new_cpb)
591
- }),
592
- competition_result_types: competition_result_types,
593
- bracket_id: active_bracket_id,
594
- player_balance: local_balance,
595
- player_bracket: active_player_bracket,
596
- competition_player_brackets: competition_player_brackets
597
- }) : /*#__PURE__*/React.createElement(React.Fragment, null)), /*#__PURE__*/React.createElement(View, {
598
- type: "footer",
599
- style: {
600
- flexDirection: 'row',
601
- padding: 10
602
- }
603
- }, /*#__PURE__*/React.createElement(Button, {
604
- style: {
605
- flex: 1
606
- },
607
- title: "CLOSE",
608
- type: "close",
609
- onPress: () => setShowCompetitionActions(false)
610
- }))))), /*#__PURE__*/React.createElement(Modal, {
611
- visible: show_pb_selector,
612
- style: {
613
- flex: 1
614
- },
615
- transparent: true,
616
- animationType: view_mode == 'desktop' ? 'fade' : 'slide'
617
- }, /*#__PURE__*/React.createElement(View, {
618
- type: "blur",
619
- style: view_mode == 'desktop' ? {
620
- flex: 1,
621
- justifyContent: 'center',
622
- alignItems: 'center'
623
- } : {
624
- flex: 1,
625
- justifyContent: 'flex-end',
626
- paddingBottom: insets?.bottom ?? 0
627
- }
628
- }, /*#__PURE__*/React.createElement(View, {
629
- float: true,
630
- style: view_mode == 'desktop' ? {
631
- width: 500
632
- } : {
633
- margin: 10
634
- }
635
- }, /*#__PURE__*/React.createElement(PlayerBracketSelector, {
636
- player_brackets: player_brackets.filter(pb => pb.bracket_id == active_bracket_id && pb.status != 'deleted'),
637
- brackets: brackets,
638
- leagues: leagues,
639
- bracket_id: active_bracket_id,
640
- onCreateNew: newpb => {
641
- setShowPBSelector(false);
642
- setNavData({
643
- ...nav_data,
644
- active_player_bracket_id: newpb.player_bracket_id
645
- });
646
- setMyData({
647
- ...my_data,
648
- player_brackets: player_brackets.filter(pb => pb.player_bracket_id != newpb.player_bracket_id).concat(newpb)
515
+ setPlayData({
516
+ ...play_data,
517
+ player_brackets: new_pb ? player_brackets.concat(new_pb) : player_brackets,
518
+ competition_player_brackets: competition_player_brackets.concat(new_cpb)
649
519
  });
650
520
  },
651
- teams: teams,
652
- athletes: athletes,
653
- bracket_competitions: bracket_competitions,
654
- competition_player_brackets: competition_player_brackets,
655
- onClose: () => setShowPBSelector(false),
656
- onSelect: pb => {
657
- setShowPBSelector(false);
521
+ competition_id: active_competition?.bracket_competition_id,
522
+ onLeaveCompetition: (bc, rem_cpb) => {
658
523
  setNavData({
659
524
  ...nav_data,
660
- active_player_bracket_id: pb.player_bracket_id
525
+ active_competition: bc
661
526
  });
662
- }
663
- })))), /*#__PURE__*/React.createElement(Modal, {
664
- visible: editing_player_bracket ? true : false,
665
- style: {
666
- flex: 1
667
- },
668
- transparent: true,
669
- animationType: view_mode == 'desktop' ? 'fade' : 'slide'
670
- }, /*#__PURE__*/React.createElement(View, {
671
- type: "blur",
672
- style: view_mode == 'desktop' ? {
673
- flex: 1,
674
- justifyContent: 'center',
675
- alignItems: 'center'
676
- } : {
677
- flex: 1,
678
- justifyContent: 'flex-end',
679
- paddingBottom: insets?.bottom ?? 0
680
- }
681
- }, /*#__PURE__*/React.createElement(View, {
682
- float: true,
683
- style: view_mode == 'desktop' ? {
684
- width: 500
685
- } : {
686
- margin: 10
687
- }
688
- }, /*#__PURE__*/React.createElement(EditPlayerBracket, {
689
- player_bracket: editing_player_bracket,
690
- onClose: () => setEditingPlayerBracket(undefined),
691
- onFocusPosition: onFocusPosition,
692
- onUpdatePlayerBracket: new_pb => {
693
- setNavData({
694
- ...nav_data,
695
- active_player_bracket_id: undefined
527
+ setPlayData({
528
+ ...play_data,
529
+ competition_player_brackets: competition_player_brackets.filter(cpb => cpb.competition_player_bracket_id != rem_cpb.competition_player_bracket_id)
696
530
  });
697
- setMyData({
698
- ...my_data,
699
- player_brackets: player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
700
- });
701
- if (new_pb.status != 'deleted') {
702
- setTimeout(() => {
703
- setNavData({
704
- ...nav_data,
705
- active_player_bracket_id: new_pb.player_bracket_id
706
- });
707
- }, 200);
708
- }
709
- setEditingPlayerBracket(undefined);
710
- }
711
- })))), loading ? /*#__PURE__*/React.createElement(View, {
531
+ },
532
+ competition_result_types: competition_result_types,
533
+ bracket_id: active_bracket_id,
534
+ player_balance: local_balance,
535
+ player_bracket: player_brackets.find(pb => pb.player_bracket_id == active_player_bracket_id),
536
+ competition_player_brackets: competition_player_brackets
537
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null)), loading ? /*#__PURE__*/React.createElement(View, {
712
538
  type: "blur",
713
539
  style: {
714
540
  position: 'absolute',