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.
- package/lib/commonjs/Bracket/api/index.js +15 -5
- package/lib/commonjs/Bracket/api/index.js.map +1 -1
- package/lib/commonjs/Bracket/components/BracketCompetitionActions.js +17 -12
- package/lib/commonjs/Bracket/components/BracketCompetitionActions.js.map +1 -1
- package/lib/commonjs/Bracket/components/BracketCompetitionCard.js +1 -0
- package/lib/commonjs/Bracket/components/BracketCompetitionCard.js.map +1 -1
- package/lib/commonjs/Bracket/components/BracketPlay/BracketRound.js +2 -0
- package/lib/commonjs/Bracket/components/BracketPlay/BracketRound.js.map +1 -1
- package/lib/commonjs/Bracket/components/BracketPlay/index.js +0 -8
- package/lib/commonjs/Bracket/components/BracketPlay/index.js.map +1 -1
- package/lib/commonjs/Bracket/components/EditPlayerBracket.js +32 -3
- package/lib/commonjs/Bracket/components/EditPlayerBracket.js.map +1 -1
- package/lib/commonjs/Bracket/components/EnteredCompetitionsModal.js +197 -0
- package/lib/commonjs/Bracket/components/EnteredCompetitionsModal.js.map +1 -0
- package/lib/commonjs/Bracket/components/JoinCompetitionCard.js +78 -3
- package/lib/commonjs/Bracket/components/JoinCompetitionCard.js.map +1 -1
- package/lib/commonjs/Bracket/components/ManageBracketCompetitionForm.js +3 -3
- package/lib/commonjs/Bracket/components/ManageBracketCompetitionForm.js.map +1 -1
- package/lib/commonjs/Bracket/components/PlayerBracketCard.js +21 -4
- package/lib/commonjs/Bracket/components/PlayerBracketCard.js.map +1 -1
- package/lib/commonjs/Bracket/components/PlayerBrackets.js +27 -4
- package/lib/commonjs/Bracket/components/PlayerBrackets.js.map +1 -1
- package/lib/commonjs/Bracket/components/RoomHome.js +436 -117
- package/lib/commonjs/Bracket/components/RoomHome.js.map +1 -1
- package/lib/commonjs/Bracket/index.js +254 -420
- package/lib/commonjs/Bracket/index.js.map +1 -1
- package/lib/commonjs/Competition/components/EnterCompetitionPrompt.js.map +1 -1
- package/lib/commonjs/Engage/index.js.map +1 -1
- package/lib/module/Bracket/api/index.js +15 -5
- package/lib/module/Bracket/api/index.js.map +1 -1
- package/lib/module/Bracket/components/BracketCompetitionActions.js +18 -13
- package/lib/module/Bracket/components/BracketCompetitionActions.js.map +1 -1
- package/lib/module/Bracket/components/BracketCompetitionCard.js +1 -0
- package/lib/module/Bracket/components/BracketCompetitionCard.js.map +1 -1
- package/lib/module/Bracket/components/BracketPlay/BracketRound.js +2 -0
- package/lib/module/Bracket/components/BracketPlay/BracketRound.js.map +1 -1
- package/lib/module/Bracket/components/BracketPlay/index.js +0 -8
- package/lib/module/Bracket/components/BracketPlay/index.js.map +1 -1
- package/lib/module/Bracket/components/EditPlayerBracket.js +33 -4
- package/lib/module/Bracket/components/EditPlayerBracket.js.map +1 -1
- package/lib/module/Bracket/components/EnteredCompetitionsModal.js +190 -0
- package/lib/module/Bracket/components/EnteredCompetitionsModal.js.map +1 -0
- package/lib/module/Bracket/components/JoinCompetitionCard.js +78 -3
- package/lib/module/Bracket/components/JoinCompetitionCard.js.map +1 -1
- package/lib/module/Bracket/components/ManageBracketCompetitionForm.js +3 -3
- package/lib/module/Bracket/components/ManageBracketCompetitionForm.js.map +1 -1
- package/lib/module/Bracket/components/PlayerBracketCard.js +21 -4
- package/lib/module/Bracket/components/PlayerBracketCard.js.map +1 -1
- package/lib/module/Bracket/components/PlayerBrackets.js +28 -5
- package/lib/module/Bracket/components/PlayerBrackets.js.map +1 -1
- package/lib/module/Bracket/components/RoomHome.js +438 -119
- package/lib/module/Bracket/components/RoomHome.js.map +1 -1
- package/lib/module/Bracket/index.js +255 -421
- package/lib/module/Bracket/index.js.map +1 -1
- package/lib/module/Competition/components/EnterCompetitionPrompt.js.map +1 -1
- package/lib/module/Engage/index.js.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/api/index.d.ts +6 -1
- package/lib/typescript/lib/commonjs/Bracket/api/index.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/BracketCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/BracketRound.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/index.d.ts +1 -2
- package/lib/typescript/lib/commonjs/Bracket/components/BracketPlay/index.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/EditPlayerBracket.d.ts +3 -1
- package/lib/typescript/lib/commonjs/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/EnteredCompetitionsModal.d.ts +14 -0
- package/lib/typescript/lib/commonjs/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
- package/lib/typescript/lib/commonjs/Bracket/components/JoinCompetitionCard.d.ts +2 -1
- package/lib/typescript/lib/commonjs/Bracket/components/JoinCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/PlayerBrackets.d.ts +4 -1
- package/lib/typescript/lib/commonjs/Bracket/components/PlayerBrackets.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/components/RoomHome.d.ts +4 -14
- package/lib/typescript/lib/commonjs/Bracket/components/RoomHome.d.ts.map +1 -1
- package/lib/typescript/lib/commonjs/Bracket/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/api/index.d.ts +6 -1
- package/lib/typescript/lib/module/Bracket/api/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/BracketCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/BracketPlay/BracketRound.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/BracketPlay/index.d.ts +1 -2
- package/lib/typescript/lib/module/Bracket/components/BracketPlay/index.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/EditPlayerBracket.d.ts +5 -2
- package/lib/typescript/lib/module/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/EnteredCompetitionsModal.d.ts +15 -0
- package/lib/typescript/lib/module/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
- package/lib/typescript/lib/module/Bracket/components/JoinCompetitionCard.d.ts +2 -1
- package/lib/typescript/lib/module/Bracket/components/JoinCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/PlayerBracketCard.d.ts +3 -1
- package/lib/typescript/lib/module/Bracket/components/PlayerBracketCard.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/PlayerBrackets.d.ts +6 -2
- package/lib/typescript/lib/module/Bracket/components/PlayerBrackets.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/components/RoomHome.d.ts +4 -14
- package/lib/typescript/lib/module/Bracket/components/RoomHome.d.ts.map +1 -1
- package/lib/typescript/lib/module/Bracket/index.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/api/index.d.ts +5 -1
- package/lib/typescript/src/Bracket/api/index.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/BracketCompetitionActions.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/BracketCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/BracketPlay/index.d.ts +1 -2
- package/lib/typescript/src/Bracket/components/BracketPlay/index.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/EditPlayerBracket.d.ts +8 -1
- package/lib/typescript/src/Bracket/components/EditPlayerBracket.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/EnteredCompetitionsModal.d.ts +21 -0
- package/lib/typescript/src/Bracket/components/EnteredCompetitionsModal.d.ts.map +1 -0
- package/lib/typescript/src/Bracket/components/JoinCompetitionCard.d.ts +2 -1
- package/lib/typescript/src/Bracket/components/JoinCompetitionCard.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/PlayerBracketCard.d.ts +3 -2
- package/lib/typescript/src/Bracket/components/PlayerBracketCard.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/PlayerBrackets.d.ts +9 -1
- package/lib/typescript/src/Bracket/components/PlayerBrackets.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/components/RoomHome.d.ts +11 -18
- package/lib/typescript/src/Bracket/components/RoomHome.d.ts.map +1 -1
- package/lib/typescript/src/Bracket/index.d.ts.map +1 -1
- package/lib/typescript/src/Engage/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/Bracket/api/index.ts +10 -5
- package/src/Bracket/components/BracketCompetitionActions.tsx +14 -12
- package/src/Bracket/components/BracketCompetitionCard.tsx +1 -0
- package/src/Bracket/components/BracketPlay/BracketRound.tsx +2 -2
- package/src/Bracket/components/BracketPlay/index.tsx +13 -18
- package/src/Bracket/components/EditPlayerBracket.tsx +58 -42
- package/src/Bracket/components/EnteredCompetitionsModal.tsx +113 -0
- package/src/Bracket/components/JoinCompetitionCard.tsx +46 -3
- package/src/Bracket/components/ManageBracketCompetitionForm.tsx +3 -3
- package/src/Bracket/components/PlayerBracketCard.tsx +9 -4
- package/src/Bracket/components/PlayerBrackets.tsx +45 -33
- package/src/Bracket/components/RoomHome.tsx +356 -117
- package/src/Bracket/index.tsx +277 -402
- package/src/Competition/components/EnterCompetitionPrompt.tsx +1 -1
- package/src/Engage/index.tsx +1 -0
- package/src/types.d.ts +1 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, {
|
|
1
|
+
import React, { useEffect, useState } from 'react';
|
|
2
2
|
import { Button, Text, View } from '../../Components/Themed';
|
|
3
3
|
import { FlatList, Image } from 'react-native';
|
|
4
4
|
import PlayerBracketCard from './PlayerBracketCard';
|
|
@@ -6,7 +6,9 @@ import SearchBox from '../../Components/SearchBox';
|
|
|
6
6
|
import { Icons, Toggle } from '../../Components';
|
|
7
7
|
import { useColors } from '../../constants/useColors';
|
|
8
8
|
import moment from 'moment-mini';
|
|
9
|
-
import { BracketComeptitionApi } from '../api';
|
|
9
|
+
import { BracketApi, BracketComeptitionApi, BracketCompetitionHelpers } from '../api';
|
|
10
|
+
import EditPlayerBracket from './EditPlayerBracket';
|
|
11
|
+
import EnteredCompetitionsModal from './EnteredCompetitionsModal';
|
|
10
12
|
const MIN_CARD_WIDTH = 330;
|
|
11
13
|
const calcCardWidth = (width, margin) => {
|
|
12
14
|
let num_cards_possible = Math.floor(width / MIN_CARD_WIDTH);
|
|
@@ -19,79 +21,248 @@ const calcCardWidth = (width, margin) => {
|
|
|
19
21
|
};
|
|
20
22
|
const sections = ['toggle', 'active_brackets', 'past_brackets', 'tournaments', 'admin_competitions', 'competitions'];
|
|
21
23
|
const RoomHome = ({
|
|
24
|
+
view_mode,
|
|
22
25
|
visible,
|
|
23
26
|
width,
|
|
27
|
+
onRequestAuthenticate,
|
|
24
28
|
player,
|
|
25
29
|
leagues,
|
|
26
|
-
|
|
27
|
-
public_competitions,
|
|
28
|
-
admin_competitions,
|
|
29
|
-
onMoreAdmin,
|
|
30
|
-
admin_offset,
|
|
30
|
+
insets,
|
|
31
31
|
onManageCompetition,
|
|
32
32
|
onCreateNewCompetition,
|
|
33
33
|
onView,
|
|
34
|
-
|
|
35
|
-
onEditPlayerBracket,
|
|
36
|
-
onFocusPosition,
|
|
37
|
-
brackets,
|
|
38
|
-
player_brackets,
|
|
39
|
-
bracket_competitions,
|
|
40
|
-
competition_player_brackets,
|
|
41
|
-
athletes,
|
|
42
|
-
teams
|
|
34
|
+
onFocusPosition
|
|
43
35
|
}) => {
|
|
44
36
|
const Colors = useColors();
|
|
37
|
+
const [active_toggle, setActiveToggle] = useState('my_brackets');
|
|
38
|
+
const [show_comps, setShowComps] = useState({
|
|
39
|
+
entered_brackets: [],
|
|
40
|
+
entered_competitions: []
|
|
41
|
+
});
|
|
42
|
+
const [editing_player_bracket, setEditingPlayerBracket] = useState(undefined);
|
|
43
|
+
const [admin_data, setAdminData] = useState({
|
|
44
|
+
admin_loading: false,
|
|
45
|
+
admin_brackets: [],
|
|
46
|
+
admin_competitions: [],
|
|
47
|
+
admin_offset: 0
|
|
48
|
+
});
|
|
49
|
+
const {
|
|
50
|
+
admin_competitions,
|
|
51
|
+
admin_offset
|
|
52
|
+
} = admin_data;
|
|
53
|
+
const [competitions_data, setCompetitionsData] = useState({
|
|
54
|
+
competitions_loading: false,
|
|
55
|
+
competitions_loaded: false,
|
|
56
|
+
public_competitions: [],
|
|
57
|
+
competition_brackets: []
|
|
58
|
+
});
|
|
59
|
+
const {
|
|
60
|
+
public_competitions,
|
|
61
|
+
competition_brackets
|
|
62
|
+
} = competitions_data;
|
|
63
|
+
const [comp_search, setCompSearch] = useState({
|
|
64
|
+
visible: false,
|
|
65
|
+
value: ''
|
|
66
|
+
});
|
|
67
|
+
let visisble_comps = [...public_competitions];
|
|
68
|
+
if (comp_search.visible) {
|
|
69
|
+
visisble_comps = visisble_comps.filter(c => `${c.competition_name} ${c.competition_description}`.toLowerCase().includes(comp_search.value.toLowerCase()));
|
|
70
|
+
}
|
|
71
|
+
const unique_competition_leagues = [...new Set(competition_brackets.filter(b => visisble_comps.map(c => c.bracket_id.toString()).includes(b.bracket_id.toString())).map(b => b.league_id))];
|
|
72
|
+
const [tournaments_data, setTournamentsData] = useState({
|
|
73
|
+
tournaments_loading: false,
|
|
74
|
+
tournament_brackets: []
|
|
75
|
+
});
|
|
76
|
+
const {
|
|
77
|
+
tournament_brackets
|
|
78
|
+
} = tournaments_data;
|
|
79
|
+
let visisble_tourney_brackets = [...tournament_brackets];
|
|
80
|
+
const [selected_league, setSelectedLeague] = useState(undefined);
|
|
81
|
+
if (selected_league) {
|
|
82
|
+
visisble_tourney_brackets = visisble_tourney_brackets.filter(b => b.league_id == selected_league);
|
|
83
|
+
}
|
|
84
|
+
const [tourney_search, setTourneySearch] = useState({
|
|
85
|
+
visible: false,
|
|
86
|
+
value: ''
|
|
87
|
+
});
|
|
88
|
+
if (tourney_search.visible) {
|
|
89
|
+
visisble_tourney_brackets = visisble_tourney_brackets.filter(b => `${b.bracket_name}`.toLowerCase().includes(tourney_search.value.toLowerCase()));
|
|
90
|
+
}
|
|
91
|
+
const unique_tournament_leagues = [...new Set(visisble_tourney_brackets.map(b => b.league_id))];
|
|
92
|
+
const [my_brackets_data, setMyBrackets] = useState({
|
|
93
|
+
my_brackets_loading: false,
|
|
94
|
+
my_brackets_loaded: false,
|
|
95
|
+
competition_player_brackets: [],
|
|
96
|
+
my_brackets: [],
|
|
97
|
+
champion_athletes: [],
|
|
98
|
+
champion_teams: [],
|
|
99
|
+
my_competitions: [],
|
|
100
|
+
player_brackets: []
|
|
101
|
+
});
|
|
102
|
+
const {
|
|
103
|
+
my_brackets_loaded,
|
|
104
|
+
my_brackets_loading,
|
|
105
|
+
my_brackets,
|
|
106
|
+
my_competitions,
|
|
107
|
+
competition_player_brackets,
|
|
108
|
+
player_brackets,
|
|
109
|
+
champion_athletes,
|
|
110
|
+
champion_teams
|
|
111
|
+
} = my_brackets_data;
|
|
112
|
+
const active_brackets = player_brackets.filter(pb => pb.status == 'active');
|
|
113
|
+
const closed_brackets = player_brackets.filter(pb => pb.status == 'closed');
|
|
114
|
+
const [past_search, setPastSearch] = useState({
|
|
115
|
+
visible: false,
|
|
116
|
+
value: ''
|
|
117
|
+
});
|
|
118
|
+
let closed_bracket_ids = [...new Set(closed_brackets.map(b => b.bracket_id))].slice(0, 10);
|
|
119
|
+
if (past_search.visible) {
|
|
120
|
+
let filtered_brackets = [...closed_brackets].filter(b => `${b.bracket_name}`.toLowerCase().includes(past_search.value.toLowerCase()));
|
|
121
|
+
closed_bracket_ids = [...new Set(filtered_brackets.map(b => b.bracket_id))].slice(0, 10);
|
|
122
|
+
}
|
|
123
|
+
const [active_search, setActiveSearch] = useState({
|
|
124
|
+
visible: false,
|
|
125
|
+
value: ''
|
|
126
|
+
});
|
|
127
|
+
let active_bracket_ids = [...new Set(active_brackets.map(b => b.bracket_id))];
|
|
128
|
+
if (active_search.visible) {
|
|
129
|
+
let filtered_a_brackets = [...active_brackets].filter(b => `${b.bracket_name}`.toLowerCase().includes(active_search.value.toLowerCase()));
|
|
130
|
+
active_bracket_ids = [...new Set(filtered_a_brackets.map(b => b.bracket_id))].slice(0, 10);
|
|
131
|
+
}
|
|
45
132
|
const [action_loading, setActionLoading] = useState(undefined); //This will be a bracket id
|
|
46
|
-
const [active_toggle, setActiveToggle] = useState('competitions');
|
|
47
|
-
const [past_search, setPastSearch] = useState('');
|
|
48
|
-
const [show_active_search, setShowActiveSearch] = useState(false);
|
|
49
133
|
const [expanded_brackets, setExpandedBrackets] = useState([]);
|
|
50
134
|
const [expanded_leagues, setExpandedLeagues] = useState([]);
|
|
51
135
|
const [expanded_c_leagues, setExpandedCLeagues] = useState([]);
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
const
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
136
|
+
useEffect(() => {
|
|
137
|
+
if (!visible) {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
getData(active_toggle);
|
|
141
|
+
}, [visible, active_toggle]);
|
|
142
|
+
const getData = async toggle => {
|
|
143
|
+
switch (toggle) {
|
|
144
|
+
case 'my_brackets':
|
|
145
|
+
getMyBrackets();
|
|
146
|
+
return;
|
|
147
|
+
case 'tournaments':
|
|
148
|
+
getTournaments();
|
|
149
|
+
return;
|
|
150
|
+
case 'competitions':
|
|
151
|
+
getCompetitions();
|
|
152
|
+
return;
|
|
153
|
+
default:
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
const getCompetitions = async () => {
|
|
158
|
+
setCompetitionsData({
|
|
159
|
+
...competitions_data,
|
|
160
|
+
competitions_loading: true
|
|
161
|
+
});
|
|
162
|
+
const pub_comps = await BracketComeptitionApi.getActivePublicBrackets();
|
|
163
|
+
const unique_brackets = [...new Set(pub_comps.map(c => c.bracket_id))];
|
|
164
|
+
const comp_brackets = await BracketApi.getBracketsByIds(unique_brackets);
|
|
165
|
+
setCompetitionsData({
|
|
166
|
+
...competitions_data,
|
|
167
|
+
public_competitions: pub_comps,
|
|
168
|
+
competitions_loaded: true,
|
|
169
|
+
competition_brackets: comp_brackets,
|
|
170
|
+
competitions_loading: false
|
|
171
|
+
});
|
|
172
|
+
getAdminComps(0);
|
|
173
|
+
};
|
|
174
|
+
const getAdminComps = async offset => {
|
|
175
|
+
if (!player) {
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
const admin_comps = await BracketComeptitionApi.getMyAdminCompetitions(offset);
|
|
179
|
+
setAdminData({
|
|
180
|
+
admin_loading: false,
|
|
181
|
+
admin_brackets: [],
|
|
182
|
+
admin_competitions: admin_comps,
|
|
183
|
+
admin_offset: offset
|
|
184
|
+
});
|
|
185
|
+
};
|
|
186
|
+
const getTournaments = async () => {
|
|
187
|
+
setTournamentsData({
|
|
188
|
+
...tournaments_data,
|
|
189
|
+
tournaments_loading: true
|
|
190
|
+
});
|
|
191
|
+
const tourney_brackets = await BracketApi.getActiveBrackets();
|
|
192
|
+
setTournamentsData({
|
|
193
|
+
...tournaments_data,
|
|
194
|
+
tournaments_loading: false,
|
|
195
|
+
tournament_brackets: tourney_brackets
|
|
196
|
+
});
|
|
197
|
+
};
|
|
198
|
+
const getMyBrackets = async () => {
|
|
199
|
+
if (!player) {
|
|
200
|
+
return;
|
|
201
|
+
}
|
|
202
|
+
setMyBrackets({
|
|
203
|
+
...my_brackets_data,
|
|
204
|
+
my_brackets_loading: true
|
|
205
|
+
});
|
|
206
|
+
const my_response = await BracketComeptitionApi.getMyPlayerBrackets();
|
|
207
|
+
const bracket_ids = [...new Set(my_response.player_brackets.map(pb => pb.bracket_id))];
|
|
208
|
+
let brackets = await BracketApi.getBracketsByIds(bracket_ids);
|
|
209
|
+
let champ_team_ids = my_response.player_brackets.filter(pb => pb.champion_id_type == 'team').map(b => b.champion_id ?? '');
|
|
210
|
+
const champ_teams = await BracketApi.getTeamsByIds(champ_team_ids);
|
|
211
|
+
let champ_athlete_ids = my_response.player_brackets.filter(pb => pb.champion_id_type == 'athlete').map(b => b.champion_id ?? '');
|
|
212
|
+
const champ_athletes = await BracketApi.getAthletesByIds(champ_athlete_ids);
|
|
213
|
+
//Filter to active and closed
|
|
214
|
+
setMyBrackets({
|
|
215
|
+
...my_brackets_data,
|
|
216
|
+
my_brackets_loading: false,
|
|
217
|
+
my_brackets_loaded: true,
|
|
218
|
+
champion_athletes: champ_athletes,
|
|
219
|
+
champion_teams: champ_teams,
|
|
220
|
+
my_brackets: brackets,
|
|
221
|
+
player_brackets: my_response.player_brackets,
|
|
222
|
+
competition_player_brackets: my_response.competition_player_brackets,
|
|
223
|
+
my_competitions: my_response.bracket_competitions
|
|
224
|
+
});
|
|
225
|
+
};
|
|
226
|
+
const handleView = async (bracket_id, player_bracket_id, bracket_competition) => {
|
|
227
|
+
if (bracket_id && player_bracket_id && bracket_competition) {
|
|
228
|
+
return onView(bracket_id, player_bracket_id, bracket_competition);
|
|
229
|
+
}
|
|
230
|
+
//Ok! Now - what if we do not have a player_bracket
|
|
231
|
+
let init_pb_id = player_bracket_id;
|
|
232
|
+
if (!init_pb_id) {
|
|
233
|
+
//Lets try and find one!
|
|
234
|
+
init_pb_id = player_brackets.find(pb => pb.bracket_id == bracket_id && pb.status != 'deleted')?.player_bracket_id;
|
|
235
|
+
if (!init_pb_id && !my_brackets_loaded) {
|
|
236
|
+
//Lets try and get the plyaers brackets and see!
|
|
237
|
+
const my_pbs = await BracketComeptitionApi.getMyPlayerBrackets();
|
|
238
|
+
init_pb_id = my_pbs.player_brackets.find(pb => pb.bracket_id == bracket_id && pb.status != 'deleted')?.player_bracket_id;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
67
241
|
|
|
68
|
-
|
|
69
|
-
let
|
|
70
|
-
if (!
|
|
71
|
-
|
|
242
|
+
//Ok! Now - what if we do not have a bracket competition!
|
|
243
|
+
let init_bc = bracket_competition;
|
|
244
|
+
if (!init_bc) {
|
|
245
|
+
//First check if my competitions has any!
|
|
246
|
+
init_bc = my_competitions.find(c => c.bracket_id == bracket_id);
|
|
247
|
+
if (!init_bc) {
|
|
248
|
+
init_bc = public_competitions.find(pc => pc.bracket_id == bracket_id);
|
|
249
|
+
}
|
|
250
|
+
if (!init_bc) {
|
|
251
|
+
//Lets try and get one from the server
|
|
252
|
+
const comps_bc = await BracketComeptitionApi.getBracketCompetitionsByBracketId(bracket_id);
|
|
253
|
+
init_bc = comps_bc.find(bc => bc.bracket_id == bracket_id && !bc.invite_only);
|
|
254
|
+
}
|
|
72
255
|
}
|
|
73
|
-
|
|
74
|
-
return init_pbs.filter(pb => brackets.map(b => b.bracket_id.toString()).includes(pb.bracket_id.toString()));
|
|
256
|
+
return onView(bracket_id, init_pb_id, init_bc);
|
|
75
257
|
};
|
|
76
|
-
let visible_player_brackets = useMemo(() => {
|
|
77
|
-
return filterPlayerBrackets(brackets, player_brackets, 'active', active_search);
|
|
78
|
-
}, [brackets.length, player_brackets.length, active_search]);
|
|
79
|
-
const active_bracket_ids = [...new Set(visible_player_brackets.map(pb => pb.bracket_id))];
|
|
80
|
-
let past_player_brackets = useMemo(() => {
|
|
81
|
-
return filterPlayerBrackets(brackets, player_brackets, 'closed', past_search);
|
|
82
|
-
}, [brackets.length, player_brackets.length, past_search]);
|
|
83
|
-
const past_bracket_ids = [...new Set(past_player_brackets.map(pb => pb.bracket_id))];
|
|
84
|
-
const competition_bracket_ids = [...new Set(public_competitions.map(bc => bc.bracket_id))];
|
|
85
|
-
const competition_brackets = brackets.filter(b => competition_bracket_ids.includes(b.bracket_id));
|
|
86
|
-
const competition_league_ids = [...new Set(competition_brackets.map(cb => cb.league_id))];
|
|
87
258
|
const pb_width = calcCardWidth(width, 6);
|
|
88
259
|
const renderBrackets = data => {
|
|
89
|
-
const bracket =
|
|
260
|
+
const bracket = my_brackets.find(b => b.bracket_id == data.item);
|
|
90
261
|
if (!bracket) {
|
|
91
262
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
92
263
|
}
|
|
93
264
|
const expanded = expanded_brackets.includes(data.item) ? true : false;
|
|
94
|
-
let my_player_brackets = player_brackets.filter(pb => pb.bracket_id == data.item);
|
|
265
|
+
let my_player_brackets = player_brackets.filter(pb => pb.bracket_id == data.item && pb.status != 'deleted');
|
|
95
266
|
let additional = my_player_brackets.length - 1;
|
|
96
267
|
if (!expanded) {
|
|
97
268
|
my_player_brackets = my_player_brackets.slice(0, 1);
|
|
@@ -99,6 +270,7 @@ const RoomHome = ({
|
|
|
99
270
|
const league = leagues.find(l => l.league_id == bracket.league_id);
|
|
100
271
|
const act_loading = action_loading == data.item ? true : false;
|
|
101
272
|
return /*#__PURE__*/React.createElement(View, {
|
|
273
|
+
key: `${data.item}_${data.index}_bracket`,
|
|
102
274
|
float: true,
|
|
103
275
|
style: {
|
|
104
276
|
margin: 5,
|
|
@@ -109,7 +281,9 @@ const RoomHome = ({
|
|
|
109
281
|
style: {
|
|
110
282
|
flexDirection: 'row',
|
|
111
283
|
alignItems: 'center',
|
|
112
|
-
padding: 10
|
|
284
|
+
padding: 10,
|
|
285
|
+
borderTopRightRadius: 8,
|
|
286
|
+
borderTopLeftRadius: 8
|
|
113
287
|
}
|
|
114
288
|
}, league ? /*#__PURE__*/React.createElement(Image, {
|
|
115
289
|
style: {
|
|
@@ -174,11 +348,14 @@ const RoomHome = ({
|
|
|
174
348
|
completion_status: 'inprogress',
|
|
175
349
|
status: 'active'
|
|
176
350
|
});
|
|
177
|
-
onUpdatePlayerBracket(new_pb);
|
|
178
351
|
setActionLoading(undefined);
|
|
179
352
|
if (!expanded) {
|
|
180
353
|
setExpandedBrackets(expanded_brackets.concat(data.item));
|
|
181
354
|
}
|
|
355
|
+
setMyBrackets({
|
|
356
|
+
...my_brackets_data,
|
|
357
|
+
player_brackets: player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
|
|
358
|
+
});
|
|
182
359
|
}
|
|
183
360
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null)), /*#__PURE__*/React.createElement(View, {
|
|
184
361
|
style: {
|
|
@@ -215,7 +392,7 @@ const RoomHome = ({
|
|
|
215
392
|
borderBottomWidth: 1,
|
|
216
393
|
borderColor: Colors.borders.light
|
|
217
394
|
},
|
|
218
|
-
onPress: () =>
|
|
395
|
+
onPress: () => handleView(data.item.bracket_id, undefined, data.item)
|
|
219
396
|
}, /*#__PURE__*/React.createElement(View, {
|
|
220
397
|
transparent: true
|
|
221
398
|
}, /*#__PURE__*/React.createElement(Image, {
|
|
@@ -293,7 +470,9 @@ const RoomHome = ({
|
|
|
293
470
|
})), /*#__PURE__*/React.createElement(View, {
|
|
294
471
|
type: "footer",
|
|
295
472
|
style: {
|
|
296
|
-
padding: 8
|
|
473
|
+
padding: 8,
|
|
474
|
+
borderBottomLeftRadius: 8,
|
|
475
|
+
borderBottomRightRadius: 8
|
|
297
476
|
}
|
|
298
477
|
}, /*#__PURE__*/React.createElement(Button, {
|
|
299
478
|
type: "action",
|
|
@@ -304,16 +483,24 @@ const RoomHome = ({
|
|
|
304
483
|
onPress: () => onManageCompetition(data.item.bracket_competition_id)
|
|
305
484
|
})));
|
|
306
485
|
};
|
|
307
|
-
const
|
|
486
|
+
const handleSearchPrivate = async code => {
|
|
487
|
+
const bc = await BracketComeptitionApi.getBracketcompetitionByCode(code);
|
|
488
|
+
if (!bc) {
|
|
489
|
+
return alert('Unable to find private competition by that code');
|
|
490
|
+
}
|
|
491
|
+
let pb_response = await BracketComeptitionApi.getMyPlayerBrackets(bc.bracket_id);
|
|
492
|
+
return handleView(bc.bracket_id, pb_response.player_brackets[0]?.player_bracket_id, bc);
|
|
493
|
+
};
|
|
494
|
+
const renderPlayerBrackets = data => {
|
|
308
495
|
const cpbs = competition_player_brackets.filter(cpb => cpb.status != 'deleted' && cpb.player_bracket_id == data.item.player_bracket_id);
|
|
309
|
-
const comps =
|
|
310
|
-
const bracket =
|
|
496
|
+
const comps = my_competitions.filter(bc => cpbs.map(cpb => cpb.bracket_competition_id.toString()).includes(bc.bracket_competition_id.toString()));
|
|
497
|
+
const bracket = my_brackets.find(b => b.bracket_id == data.item.bracket_id);
|
|
311
498
|
if (!bracket) {
|
|
312
499
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
313
500
|
}
|
|
314
501
|
const league = leagues.find(l => l.league_id == bracket.league_id);
|
|
315
|
-
const champion_team =
|
|
316
|
-
const champion_athlete =
|
|
502
|
+
const champion_team = champion_teams.find(t => data.item.champion_id_type == 'team' && t.team_id == data.item.champion_id);
|
|
503
|
+
const champion_athlete = champion_athletes.find(t => data.item.champion_id_type == 'athlete' && t.athlete_id == data.item.champion_id);
|
|
317
504
|
return /*#__PURE__*/React.createElement(View, {
|
|
318
505
|
style: {
|
|
319
506
|
borderBottomWidth: 1,
|
|
@@ -328,10 +515,17 @@ const RoomHome = ({
|
|
|
328
515
|
competition_player_brackets: cpbs,
|
|
329
516
|
bracket: bracket,
|
|
330
517
|
bracket_competitions: comps,
|
|
331
|
-
onView:
|
|
332
|
-
onEdit:
|
|
518
|
+
onView: (bracket_id, player_bracket_id) => handleView(bracket_id, player_bracket_id),
|
|
519
|
+
onEdit: () => setEditingPlayerBracket(data.item),
|
|
520
|
+
onShowCompetitions: () => setShowComps({
|
|
521
|
+
player_bracket: data.item,
|
|
522
|
+
entered_competitions: comps,
|
|
523
|
+
entered_brackets: cpbs,
|
|
524
|
+
champion_team,
|
|
525
|
+
champion_athlete
|
|
526
|
+
})
|
|
333
527
|
}));
|
|
334
|
-
}
|
|
528
|
+
};
|
|
335
529
|
const renderLeagueFilters = data => {
|
|
336
530
|
const league = leagues.find(l => l.league_id == data.item);
|
|
337
531
|
if (!league) {
|
|
@@ -347,7 +541,8 @@ const RoomHome = ({
|
|
|
347
541
|
paddingRight: 10,
|
|
348
542
|
paddingLeft: 10,
|
|
349
543
|
borderRadius: 100,
|
|
350
|
-
margin: 5
|
|
544
|
+
margin: 5,
|
|
545
|
+
backgroundColor: selected ? Colors.text.highlight : undefined
|
|
351
546
|
},
|
|
352
547
|
onPress: () => selected ? setSelectedLeague(undefined) : setSelectedLeague(data.item)
|
|
353
548
|
}, /*#__PURE__*/React.createElement(Image, {
|
|
@@ -374,7 +569,7 @@ const RoomHome = ({
|
|
|
374
569
|
borderBottomWidth: 1,
|
|
375
570
|
borderColor: Colors.borders.light
|
|
376
571
|
},
|
|
377
|
-
onPress: () =>
|
|
572
|
+
onPress: () => handleView(data.item.bracket_id)
|
|
378
573
|
}, /*#__PURE__*/React.createElement(Icons.BracketIcon, {
|
|
379
574
|
size: 18,
|
|
380
575
|
color: Colors.text.h1
|
|
@@ -406,7 +601,7 @@ const RoomHome = ({
|
|
|
406
601
|
}
|
|
407
602
|
const expanded = expanded_c_leagues.includes(data.item) ? true : false;
|
|
408
603
|
//Find all the brackets for this league
|
|
409
|
-
let league_brackets =
|
|
604
|
+
let league_brackets = competition_brackets.filter(b => b.league_id == data.item);
|
|
410
605
|
let league_competitions = public_competitions.filter(bc => league_brackets.map(lb => lb.bracket_id.toString()).includes(bc.bracket_id.toString()));
|
|
411
606
|
const num_comps = league_competitions.length;
|
|
412
607
|
let additional = league_competitions.length - 1;
|
|
@@ -494,7 +689,7 @@ const RoomHome = ({
|
|
|
494
689
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
495
690
|
}
|
|
496
691
|
const expanded = expanded_leagues.includes(data.item) ? true : false;
|
|
497
|
-
let league_brackets =
|
|
692
|
+
let league_brackets = tournament_brackets.filter(b => b.league_id == data.item);
|
|
498
693
|
let additional = league_brackets.length - 1;
|
|
499
694
|
if (!expanded) {
|
|
500
695
|
league_brackets = league_brackets.slice(0, 1);
|
|
@@ -579,19 +774,11 @@ const RoomHome = ({
|
|
|
579
774
|
case 'toggle':
|
|
580
775
|
return /*#__PURE__*/React.createElement(View, {
|
|
581
776
|
style: {
|
|
582
|
-
margin:
|
|
777
|
+
margin: 10,
|
|
778
|
+
marginTop: 18
|
|
583
779
|
}
|
|
584
780
|
}, /*#__PURE__*/React.createElement(Toggle, {
|
|
585
|
-
options:
|
|
586
|
-
key: 'my_brackets',
|
|
587
|
-
label: 'My Brackets'
|
|
588
|
-
}, {
|
|
589
|
-
key: 'tournaments',
|
|
590
|
-
label: 'Tournaments'
|
|
591
|
-
}, {
|
|
592
|
-
key: 'competitions',
|
|
593
|
-
label: 'Competitions'
|
|
594
|
-
}],
|
|
781
|
+
options: BracketCompetitionHelpers.getToggleOptions(),
|
|
595
782
|
selected_option: active_toggle,
|
|
596
783
|
onSelectOption: key => setActiveToggle(key)
|
|
597
784
|
}));
|
|
@@ -599,14 +786,32 @@ const RoomHome = ({
|
|
|
599
786
|
if (active_toggle != 'my_brackets') {
|
|
600
787
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
601
788
|
}
|
|
789
|
+
if (!player) {
|
|
790
|
+
return /*#__PURE__*/React.createElement(View, {
|
|
791
|
+
style: {
|
|
792
|
+
padding: 40,
|
|
793
|
+
justifyContent: 'center',
|
|
794
|
+
alignItems: 'center'
|
|
795
|
+
}
|
|
796
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
797
|
+
float: true,
|
|
798
|
+
type: "success",
|
|
799
|
+
title: "GET STARTED",
|
|
800
|
+
onPress: () => onRequestAuthenticate()
|
|
801
|
+
}));
|
|
802
|
+
}
|
|
602
803
|
return /*#__PURE__*/React.createElement(View, {
|
|
603
|
-
nativeID: "my_competitions"
|
|
804
|
+
nativeID: "my_competitions",
|
|
805
|
+
style: {
|
|
806
|
+
marginTop: 18
|
|
807
|
+
}
|
|
604
808
|
}, /*#__PURE__*/React.createElement(View, {
|
|
605
|
-
type: "header",
|
|
606
809
|
style: {
|
|
607
|
-
padding:
|
|
810
|
+
padding: 18,
|
|
608
811
|
flexDirection: 'row',
|
|
609
|
-
alignItems: 'center'
|
|
812
|
+
alignItems: 'center',
|
|
813
|
+
borderBottomWidth: 1,
|
|
814
|
+
borderColor: Colors.borders.light
|
|
610
815
|
}
|
|
611
816
|
}, /*#__PURE__*/React.createElement(View, {
|
|
612
817
|
transparent: true,
|
|
@@ -629,22 +834,28 @@ const RoomHome = ({
|
|
|
629
834
|
justifyContent: 'center',
|
|
630
835
|
alignItems: 'center'
|
|
631
836
|
},
|
|
632
|
-
onPress: () =>
|
|
633
|
-
|
|
837
|
+
onPress: () => setActiveSearch({
|
|
838
|
+
visible: !active_search.visible,
|
|
839
|
+
value: ''
|
|
840
|
+
})
|
|
841
|
+
}, active_search.visible ? /*#__PURE__*/React.createElement(Icons.CloseIcon, {
|
|
634
842
|
size: 14,
|
|
635
843
|
color: Colors.text.error
|
|
636
844
|
}) : /*#__PURE__*/React.createElement(Icons.SearchIcon, {
|
|
637
845
|
size: 14,
|
|
638
846
|
color: Colors.text.action
|
|
639
|
-
}))),
|
|
640
|
-
onChange: text => setActiveSearch(
|
|
847
|
+
}))), active_search.visible ? /*#__PURE__*/React.createElement(SearchBox, {
|
|
848
|
+
onChange: text => setActiveSearch({
|
|
849
|
+
...active_search,
|
|
850
|
+
value: text
|
|
851
|
+
}),
|
|
641
852
|
hide_search_button: true,
|
|
642
853
|
placeholder: "Search Active Brackets",
|
|
643
854
|
onFocusPosition: onFocusPosition
|
|
644
855
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
|
|
645
|
-
type: "
|
|
856
|
+
type: "header",
|
|
646
857
|
style: {
|
|
647
|
-
|
|
858
|
+
padding: 10,
|
|
648
859
|
flexDirection: 'row',
|
|
649
860
|
flexWrap: 'wrap',
|
|
650
861
|
justifyContent: 'center'
|
|
@@ -687,25 +898,31 @@ const RoomHome = ({
|
|
|
687
898
|
justifyContent: 'center',
|
|
688
899
|
alignItems: 'center'
|
|
689
900
|
},
|
|
690
|
-
onPress: () =>
|
|
691
|
-
|
|
901
|
+
onPress: () => setTourneySearch({
|
|
902
|
+
visible: !tourney_search.visible,
|
|
903
|
+
value: ''
|
|
904
|
+
})
|
|
905
|
+
}, tourney_search.visible ? /*#__PURE__*/React.createElement(Icons.CloseIcon, {
|
|
692
906
|
size: 14,
|
|
693
907
|
color: Colors.text.error
|
|
694
908
|
}) : /*#__PURE__*/React.createElement(Icons.SearchIcon, {
|
|
695
909
|
size: 14,
|
|
696
910
|
color: Colors.text.action
|
|
697
|
-
}))),
|
|
911
|
+
}))), tourney_search.visible ? /*#__PURE__*/React.createElement(View, {
|
|
698
912
|
style: {
|
|
699
913
|
padding: 5
|
|
700
914
|
}
|
|
701
915
|
}, /*#__PURE__*/React.createElement(FlatList, {
|
|
702
916
|
key: "unique_leagues",
|
|
703
917
|
keyExtractor: item => item,
|
|
704
|
-
data:
|
|
918
|
+
data: unique_tournament_leagues,
|
|
705
919
|
renderItem: renderLeagueFilters,
|
|
706
920
|
horizontal: true
|
|
707
|
-
})) : /*#__PURE__*/React.createElement(React.Fragment, null),
|
|
708
|
-
onChange: text =>
|
|
921
|
+
})) : /*#__PURE__*/React.createElement(React.Fragment, null), tourney_search.visible ? /*#__PURE__*/React.createElement(SearchBox, {
|
|
922
|
+
onChange: text => setTourneySearch({
|
|
923
|
+
...tourney_search,
|
|
924
|
+
value: text
|
|
925
|
+
}),
|
|
709
926
|
hide_search_button: true,
|
|
710
927
|
placeholder: "Search Active Tournaments",
|
|
711
928
|
onFocusPosition: onFocusPosition
|
|
@@ -718,7 +935,7 @@ const RoomHome = ({
|
|
|
718
935
|
flexWrap: 'wrap',
|
|
719
936
|
justifyContent: 'center'
|
|
720
937
|
}
|
|
721
|
-
},
|
|
938
|
+
}, unique_tournament_leagues.map((id, index) => {
|
|
722
939
|
return renderLeagues({
|
|
723
940
|
item: id,
|
|
724
941
|
index
|
|
@@ -728,14 +945,21 @@ const RoomHome = ({
|
|
|
728
945
|
if (active_toggle != 'my_brackets') {
|
|
729
946
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
730
947
|
}
|
|
948
|
+
if (!player) {
|
|
949
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
950
|
+
}
|
|
731
951
|
return /*#__PURE__*/React.createElement(View, {
|
|
732
|
-
nativeID: "past_brackets"
|
|
952
|
+
nativeID: "past_brackets",
|
|
953
|
+
style: {
|
|
954
|
+
marginTop: 18
|
|
955
|
+
}
|
|
733
956
|
}, /*#__PURE__*/React.createElement(View, {
|
|
734
|
-
type: "header",
|
|
735
957
|
style: {
|
|
736
|
-
padding:
|
|
958
|
+
padding: 18,
|
|
737
959
|
flexDirection: 'row',
|
|
738
|
-
alignItems: 'center'
|
|
960
|
+
alignItems: 'center',
|
|
961
|
+
borderBottomWidth: 1,
|
|
962
|
+
borderColor: Colors.borders.light
|
|
739
963
|
}
|
|
740
964
|
}, /*#__PURE__*/React.createElement(View, {
|
|
741
965
|
transparent: true,
|
|
@@ -745,7 +969,7 @@ const RoomHome = ({
|
|
|
745
969
|
}
|
|
746
970
|
}, /*#__PURE__*/React.createElement(Text, {
|
|
747
971
|
theme: "h1"
|
|
748
|
-
}, "
|
|
972
|
+
}, "My Past Brackets"), /*#__PURE__*/React.createElement(Text, {
|
|
749
973
|
style: {
|
|
750
974
|
marginTop: 4
|
|
751
975
|
}
|
|
@@ -758,27 +982,33 @@ const RoomHome = ({
|
|
|
758
982
|
justifyContent: 'center',
|
|
759
983
|
alignItems: 'center'
|
|
760
984
|
},
|
|
761
|
-
onPress: () =>
|
|
762
|
-
|
|
985
|
+
onPress: () => setPastSearch({
|
|
986
|
+
visible: !past_search.visible,
|
|
987
|
+
value: ''
|
|
988
|
+
})
|
|
989
|
+
}, past_search.visible ? /*#__PURE__*/React.createElement(Icons.CloseIcon, {
|
|
763
990
|
size: 14,
|
|
764
991
|
color: Colors.text.error
|
|
765
992
|
}) : /*#__PURE__*/React.createElement(Icons.SearchIcon, {
|
|
766
993
|
size: 14,
|
|
767
994
|
color: Colors.text.action
|
|
768
|
-
}))),
|
|
769
|
-
onChange: text => setPastSearch(
|
|
995
|
+
}))), past_search.visible ? /*#__PURE__*/React.createElement(SearchBox, {
|
|
996
|
+
onChange: text => setPastSearch({
|
|
997
|
+
...past_search,
|
|
998
|
+
value: text
|
|
999
|
+
}),
|
|
770
1000
|
hide_search_button: true,
|
|
771
1001
|
placeholder: "Search Past Brackets",
|
|
772
1002
|
onFocusPosition: onFocusPosition
|
|
773
1003
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
|
|
774
|
-
type: "
|
|
1004
|
+
type: "header",
|
|
775
1005
|
style: {
|
|
776
|
-
|
|
1006
|
+
padding: 10,
|
|
777
1007
|
flexDirection: 'row',
|
|
778
1008
|
flexWrap: 'wrap',
|
|
779
1009
|
justifyContent: 'center'
|
|
780
1010
|
}
|
|
781
|
-
},
|
|
1011
|
+
}, closed_bracket_ids.map((id, index) => {
|
|
782
1012
|
return renderBrackets({
|
|
783
1013
|
item: id,
|
|
784
1014
|
index
|
|
@@ -788,6 +1018,9 @@ const RoomHome = ({
|
|
|
788
1018
|
if (active_toggle != 'competitions') {
|
|
789
1019
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
790
1020
|
}
|
|
1021
|
+
if (!player) {
|
|
1022
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
1023
|
+
}
|
|
791
1024
|
return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
|
|
792
1025
|
type: "header",
|
|
793
1026
|
style: {
|
|
@@ -814,24 +1047,72 @@ const RoomHome = ({
|
|
|
814
1047
|
padding: 0,
|
|
815
1048
|
marginRight: 10
|
|
816
1049
|
},
|
|
817
|
-
onPress: () =>
|
|
1050
|
+
onPress: () => getAdminComps(admin_offset - 1)
|
|
818
1051
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(Button, {
|
|
819
1052
|
title: "MORE",
|
|
820
1053
|
type: "text",
|
|
821
1054
|
style: {
|
|
822
1055
|
padding: 0
|
|
823
1056
|
},
|
|
824
|
-
onPress: () =>
|
|
1057
|
+
onPress: () => getAdminComps(admin_offset + 1)
|
|
825
1058
|
})), /*#__PURE__*/React.createElement(View, {
|
|
826
1059
|
style: {
|
|
827
1060
|
padding: 10
|
|
828
1061
|
}
|
|
829
|
-
}, /*#__PURE__*/React.createElement(
|
|
1062
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
1063
|
+
style: {
|
|
1064
|
+
flexDirection: 'row'
|
|
1065
|
+
}
|
|
1066
|
+
}, onCreateNewCompetition ? /*#__PURE__*/React.createElement(View, {
|
|
1067
|
+
float: true,
|
|
1068
|
+
style: {
|
|
1069
|
+
width: 100,
|
|
1070
|
+
margin: 5,
|
|
1071
|
+
borderWidth: 1,
|
|
1072
|
+
borderColor: Colors.text.success
|
|
1073
|
+
}
|
|
1074
|
+
}, /*#__PURE__*/React.createElement(View, {
|
|
1075
|
+
type: "header",
|
|
1076
|
+
style: {
|
|
1077
|
+
borderTopRightRadius: 8,
|
|
1078
|
+
borderTopLeftRadius: 8,
|
|
1079
|
+
padding: 5
|
|
1080
|
+
}
|
|
1081
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
1082
|
+
style: {
|
|
1083
|
+
padding: 5
|
|
1084
|
+
},
|
|
1085
|
+
theme: "description",
|
|
1086
|
+
textAlign: "center"
|
|
1087
|
+
}, "NEW")), /*#__PURE__*/React.createElement(View, {
|
|
1088
|
+
style: {
|
|
1089
|
+
flex: 1,
|
|
1090
|
+
justifyContent: 'center',
|
|
1091
|
+
alignItems: 'center'
|
|
1092
|
+
}
|
|
1093
|
+
}, /*#__PURE__*/React.createElement(Icons.BracketIcon, {
|
|
1094
|
+
size: 40,
|
|
1095
|
+
color: Colors.text.h1
|
|
1096
|
+
})), /*#__PURE__*/React.createElement(View, {
|
|
1097
|
+
type: "footer",
|
|
1098
|
+
style: {
|
|
1099
|
+
padding: 8,
|
|
1100
|
+
borderBottomLeftRadius: 8,
|
|
1101
|
+
borderBottomRightRadius: 8
|
|
1102
|
+
}
|
|
1103
|
+
}, /*#__PURE__*/React.createElement(Button, {
|
|
1104
|
+
title: "CREATE",
|
|
1105
|
+
type: "success",
|
|
1106
|
+
style: {
|
|
1107
|
+
padding: 5
|
|
1108
|
+
},
|
|
1109
|
+
onPress: () => onCreateNewCompetition()
|
|
1110
|
+
}))) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(FlatList, {
|
|
830
1111
|
data: admin_competitions,
|
|
831
1112
|
renderItem: renderAdminCompetitions,
|
|
832
1113
|
keyExtractor: item => `admin_${item.bracket_competition_id.toString()}`,
|
|
833
1114
|
horizontal: true
|
|
834
|
-
})));
|
|
1115
|
+
}))));
|
|
835
1116
|
case 'competitions':
|
|
836
1117
|
if (active_toggle != 'competitions') {
|
|
837
1118
|
return /*#__PURE__*/React.createElement(React.Fragment, null);
|
|
@@ -866,8 +1147,11 @@ const RoomHome = ({
|
|
|
866
1147
|
justifyContent: 'center',
|
|
867
1148
|
alignItems: 'center'
|
|
868
1149
|
},
|
|
869
|
-
onPress: () =>
|
|
870
|
-
|
|
1150
|
+
onPress: () => setCompSearch({
|
|
1151
|
+
visible: !comp_search.visible,
|
|
1152
|
+
value: ''
|
|
1153
|
+
})
|
|
1154
|
+
}, comp_search.visible ? /*#__PURE__*/React.createElement(Icons.CloseIcon, {
|
|
871
1155
|
size: 12,
|
|
872
1156
|
color: Colors.text.error
|
|
873
1157
|
}) : /*#__PURE__*/React.createElement(Icons.SearchIcon, {
|
|
@@ -891,9 +1175,12 @@ const RoomHome = ({
|
|
|
891
1175
|
}, "+"), /*#__PURE__*/React.createElement(Icons.TrophyIcon, {
|
|
892
1176
|
color: Colors.text.white,
|
|
893
1177
|
size: 14
|
|
894
|
-
})) : /*#__PURE__*/React.createElement(React.Fragment, null)),
|
|
895
|
-
onChange: text =>
|
|
896
|
-
|
|
1178
|
+
})) : /*#__PURE__*/React.createElement(React.Fragment, null)), comp_search.visible ? /*#__PURE__*/React.createElement(SearchBox, {
|
|
1179
|
+
onChange: text => setCompSearch({
|
|
1180
|
+
...comp_search,
|
|
1181
|
+
value: text
|
|
1182
|
+
}),
|
|
1183
|
+
onSearch: text => handleSearchPrivate(text),
|
|
897
1184
|
placeholder: "Search or Enter Private Code",
|
|
898
1185
|
onFocusPosition: onFocusPosition
|
|
899
1186
|
}) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
|
|
@@ -905,7 +1192,7 @@ const RoomHome = ({
|
|
|
905
1192
|
flexWrap: 'wrap',
|
|
906
1193
|
justifyContent: 'center'
|
|
907
1194
|
}
|
|
908
|
-
},
|
|
1195
|
+
}, unique_competition_leagues.map((id, index) => {
|
|
909
1196
|
return renderLeaguesForCompetitions({
|
|
910
1197
|
item: id,
|
|
911
1198
|
index
|
|
@@ -925,8 +1212,40 @@ const RoomHome = ({
|
|
|
925
1212
|
}, /*#__PURE__*/React.createElement(FlatList, {
|
|
926
1213
|
data: sections,
|
|
927
1214
|
key: "room_sections",
|
|
1215
|
+
refreshing: my_brackets_loading,
|
|
928
1216
|
keyExtractor: item => item,
|
|
929
1217
|
renderItem: renderSections
|
|
1218
|
+
}), /*#__PURE__*/React.createElement(EditPlayerBracket, {
|
|
1219
|
+
player_bracket: editing_player_bracket,
|
|
1220
|
+
view_mode: view_mode,
|
|
1221
|
+
insets: insets,
|
|
1222
|
+
onClose: () => setEditingPlayerBracket(undefined),
|
|
1223
|
+
onFocusPosition: onFocusPosition,
|
|
1224
|
+
onUpdatePlayerBracket: new_pb => {
|
|
1225
|
+
setEditingPlayerBracket(undefined);
|
|
1226
|
+
setMyBrackets({
|
|
1227
|
+
...my_brackets_data,
|
|
1228
|
+
player_brackets: player_brackets.filter(pb => pb.player_bracket_id != new_pb.player_bracket_id).concat(new_pb)
|
|
1229
|
+
});
|
|
1230
|
+
}
|
|
1231
|
+
}), /*#__PURE__*/React.createElement(EnteredCompetitionsModal, {
|
|
1232
|
+
player_bracket: show_comps.player_bracket,
|
|
1233
|
+
onSelectCompetition: bc => {
|
|
1234
|
+
if (!show_comps.player_bracket) {
|
|
1235
|
+
return;
|
|
1236
|
+
}
|
|
1237
|
+
onView(show_comps.player_bracket.bracket_id, show_comps.player_bracket.player_bracket_id, bc);
|
|
1238
|
+
},
|
|
1239
|
+
insets: insets,
|
|
1240
|
+
champion_team: show_comps.champion_team,
|
|
1241
|
+
champion_athlete: show_comps.champion_athlete,
|
|
1242
|
+
onClose: () => setShowComps({
|
|
1243
|
+
entered_brackets: [],
|
|
1244
|
+
entered_competitions: []
|
|
1245
|
+
}),
|
|
1246
|
+
entered_brackets: show_comps.entered_brackets,
|
|
1247
|
+
entered_competitions: show_comps.entered_competitions,
|
|
1248
|
+
view_mode: view_mode
|
|
930
1249
|
}));
|
|
931
1250
|
};
|
|
932
1251
|
export default RoomHome;
|