be-components 4.5.5 → 4.5.8

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