be-components 5.2.2 → 5.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. package/lib/commonjs/Leaders/api/index.js +88 -0
  2. package/lib/commonjs/Leaders/api/index.js.map +1 -0
  3. package/lib/commonjs/Leaders/components/LeaderCard.js +146 -0
  4. package/lib/commonjs/Leaders/components/LeaderCard.js.map +1 -0
  5. package/lib/commonjs/Leaders/components/LeaderboardCard.js +205 -0
  6. package/lib/commonjs/Leaders/components/LeaderboardCard.js.map +1 -0
  7. package/lib/commonjs/Leaders/index.js +324 -0
  8. package/lib/commonjs/Leaders/index.js.map +1 -0
  9. package/lib/commonjs/SocialComponents/PostCard/index.js +2 -1
  10. package/lib/commonjs/SocialComponents/PostCard/index.js.map +1 -1
  11. package/lib/commonjs/index.js +14 -0
  12. package/lib/commonjs/index.js.map +1 -1
  13. package/lib/module/Leaders/api/index.js +81 -0
  14. package/lib/module/Leaders/api/index.js.map +1 -0
  15. package/lib/module/Leaders/components/LeaderCard.js +139 -0
  16. package/lib/module/Leaders/components/LeaderCard.js.map +1 -0
  17. package/lib/module/Leaders/components/LeaderboardCard.js +196 -0
  18. package/lib/module/Leaders/components/LeaderboardCard.js.map +1 -0
  19. package/lib/module/Leaders/index.js +315 -0
  20. package/lib/module/Leaders/index.js.map +1 -0
  21. package/lib/module/SocialComponents/PostCard/index.js +2 -1
  22. package/lib/module/SocialComponents/PostCard/index.js.map +1 -1
  23. package/lib/module/index.js +3 -1
  24. package/lib/module/index.js.map +1 -1
  25. package/lib/typescript/lib/commonjs/Leaders/api/index.d.ts +18 -0
  26. package/lib/typescript/lib/commonjs/Leaders/api/index.d.ts.map +1 -0
  27. package/lib/typescript/lib/commonjs/Leaders/components/LeaderCard.d.ts +11 -0
  28. package/lib/typescript/lib/commonjs/Leaders/components/LeaderCard.d.ts.map +1 -0
  29. package/lib/typescript/lib/commonjs/Leaders/components/LeaderboardCard.d.ts +10 -0
  30. package/lib/typescript/lib/commonjs/Leaders/components/LeaderboardCard.d.ts.map +1 -0
  31. package/lib/typescript/lib/commonjs/Leaders/index.d.ts +8 -0
  32. package/lib/typescript/lib/commonjs/Leaders/index.d.ts.map +1 -0
  33. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/index.d.ts +2 -1
  34. package/lib/typescript/lib/commonjs/SocialComponents/PostCard/index.d.ts.map +1 -1
  35. package/lib/typescript/lib/commonjs/index.d.ts +2 -0
  36. package/lib/typescript/lib/commonjs/index.d.ts.map +1 -1
  37. package/lib/typescript/lib/module/Components/Spring.d.ts +1 -1
  38. package/lib/typescript/lib/module/Leaders/api/index.d.ts +17 -0
  39. package/lib/typescript/lib/module/Leaders/api/index.d.ts.map +1 -0
  40. package/lib/typescript/lib/module/Leaders/components/LeaderCard.d.ts +11 -0
  41. package/lib/typescript/lib/module/Leaders/components/LeaderCard.d.ts.map +1 -0
  42. package/lib/typescript/lib/module/Leaders/components/LeaderboardCard.d.ts +12 -0
  43. package/lib/typescript/lib/module/Leaders/components/LeaderboardCard.d.ts.map +1 -0
  44. package/lib/typescript/lib/module/Leaders/index.d.ts +8 -0
  45. package/lib/typescript/lib/module/Leaders/index.d.ts.map +1 -0
  46. package/lib/typescript/lib/module/SocialComponents/PostCard/index.d.ts +2 -1
  47. package/lib/typescript/lib/module/SocialComponents/PostCard/index.d.ts.map +1 -1
  48. package/lib/typescript/lib/module/index.d.ts +3 -1
  49. package/lib/typescript/lib/module/index.d.ts.map +1 -1
  50. package/lib/typescript/src/Leaders/api/index.d.ts +18 -0
  51. package/lib/typescript/src/Leaders/api/index.d.ts.map +1 -0
  52. package/lib/typescript/src/Leaders/components/LeaderCard.d.ts +13 -0
  53. package/lib/typescript/src/Leaders/components/LeaderCard.d.ts.map +1 -0
  54. package/lib/typescript/src/Leaders/components/LeaderboardCard.d.ts +12 -0
  55. package/lib/typescript/src/Leaders/components/LeaderboardCard.d.ts.map +1 -0
  56. package/lib/typescript/src/Leaders/index.d.ts +9 -0
  57. package/lib/typescript/src/Leaders/index.d.ts.map +1 -0
  58. package/lib/typescript/src/SocialComponents/PostCard/index.d.ts +2 -1
  59. package/lib/typescript/src/SocialComponents/PostCard/index.d.ts.map +1 -1
  60. package/lib/typescript/src/index.d.ts +3 -1
  61. package/lib/typescript/src/index.d.ts.map +1 -1
  62. package/package.json +1 -1
  63. package/src/Leaders/api/index.ts +70 -0
  64. package/src/Leaders/components/LeaderCard.tsx +71 -0
  65. package/src/Leaders/components/LeaderboardCard.tsx +156 -0
  66. package/src/Leaders/index.tsx +245 -0
  67. package/src/SocialComponents/PostCard/index.tsx +3 -2
  68. package/src/index.tsx +4 -1
  69. package/src/types.d.ts +36 -0
@@ -0,0 +1,139 @@
1
+ import React from 'react';
2
+ import { Button, Text, View } from "../../Components/Themed";
3
+ import { Image } from 'react-native';
4
+ import { useColors } from '../../constants/useColors';
5
+ import { LeadersHelpers } from '../api';
6
+ import moment from 'moment-mini';
7
+ const LeaderCard = ({
8
+ direction,
9
+ leader,
10
+ player,
11
+ category,
12
+ show_view_profile,
13
+ onSelectLeader
14
+ }) => {
15
+ const Colors = useColors();
16
+ if (direction == 'vertical') {
17
+ return /*#__PURE__*/React.createElement(Button, {
18
+ float: true,
19
+ style: {
20
+ padding: 0,
21
+ borderRadius: 12
22
+ },
23
+ onPress: () => onSelectLeader(leader, player)
24
+ }, /*#__PURE__*/React.createElement(View, {
25
+ type: "header",
26
+ style: {
27
+ padding: 5,
28
+ borderTopRightRadius: 12,
29
+ borderTopLeftRadius: 12
30
+ }
31
+ }, /*#__PURE__*/React.createElement(Text, {
32
+ theme: "h1",
33
+ textAlign: "center",
34
+ color: Colors.text.success
35
+ }, LeadersHelpers.formatPlace(leader.place))), /*#__PURE__*/React.createElement(View, {
36
+ float: true,
37
+ style: {
38
+ borderRadius: 100,
39
+ padding: 2,
40
+ alignSelf: 'center',
41
+ margin: 5
42
+ }
43
+ }, /*#__PURE__*/React.createElement(Image, {
44
+ source: {
45
+ uri: player.profile_pic && player.profile_pic != '' ? player.profile_pic : 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
46
+ },
47
+ style: {
48
+ height: 60,
49
+ width: 60,
50
+ borderRadius: 100
51
+ },
52
+ resizeMode: "cover"
53
+ })), /*#__PURE__*/React.createElement(View, {
54
+ transparent: true,
55
+ style: {
56
+ padding: 10,
57
+ borderTopWidth: 1,
58
+ borderColor: Colors.borders.light,
59
+ borderBottomRightRadius: 12,
60
+ borderBottomLeftRadius: 12
61
+ }
62
+ }, /*#__PURE__*/React.createElement(Text, {
63
+ theme: "h2",
64
+ textAlign: "center",
65
+ color: Colors.text.action
66
+ }, category.stat_label_loc == 'prefix' ? category.stat_label : '', leader.category_score.toFixed(2), category.stat_label_loc == 'suffix' ? category.stat_label : '')));
67
+ }
68
+ return /*#__PURE__*/React.createElement(Button, {
69
+ float: true,
70
+ style: {
71
+ flexDirection: 'row',
72
+ alignItems: 'center',
73
+ padding: 4,
74
+ borderRadius: 100,
75
+ borderTopLeftRadius: 8,
76
+ borderBottomLeftRadius: 8
77
+ },
78
+ onPress: () => onSelectLeader(leader, player)
79
+ }, /*#__PURE__*/React.createElement(View, {
80
+ transparent: true,
81
+ style: {
82
+ padding: 5,
83
+ borderRightWidth: 1,
84
+ borderColor: Colors.borders.light
85
+ }
86
+ }, /*#__PURE__*/React.createElement(Text, {
87
+ theme: "h1",
88
+ color: Colors.text.success
89
+ }, LeadersHelpers.formatPlace(leader.place))), /*#__PURE__*/React.createElement(View, {
90
+ float: true,
91
+ style: {
92
+ borderRadius: 100,
93
+ padding: 2,
94
+ marginLeft: 5
95
+ }
96
+ }, /*#__PURE__*/React.createElement(Image, {
97
+ source: {
98
+ uri: player.profile_pic && player.profile_pic != '' ? player.profile_pic : 'https://res.cloudinary.com/hoabts6mc/image/upload/v1722453927/default_man_n96ofq.webp'
99
+ },
100
+ style: {
101
+ height: 45,
102
+ width: 45,
103
+ borderRadius: 100
104
+ },
105
+ resizeMode: "cover"
106
+ })), /*#__PURE__*/React.createElement(View, {
107
+ transparent: true,
108
+ style: {
109
+ flex: 1,
110
+ marginLeft: 10
111
+ }
112
+ }, /*#__PURE__*/React.createElement(Text, {
113
+ theme: "h2"
114
+ }, "@", player.username), /*#__PURE__*/React.createElement(Text, {
115
+ style: {
116
+ marginTop: 4
117
+ },
118
+ theme: "description"
119
+ }, "Joined ", moment(player.create_datetime).fromNow())), show_view_profile ? /*#__PURE__*/React.createElement(Button, {
120
+ disabled: true,
121
+ title: "View",
122
+ onPress: () => console.log(''),
123
+ type: "action",
124
+ style: {
125
+ padding: 10,
126
+ marginRight: 10
127
+ }
128
+ }) : /*#__PURE__*/React.createElement(View, {
129
+ transparent: true,
130
+ style: {
131
+ padding: 5
132
+ }
133
+ }, /*#__PURE__*/React.createElement(Text, {
134
+ theme: "h2",
135
+ color: Colors.text.action
136
+ }, category.stat_label_loc == 'prefix' ? category.stat_label : '', leader.category_score.toFixed(2), category.stat_label_loc == 'suffix' ? category.stat_label : '')));
137
+ };
138
+ export default LeaderCard;
139
+ //# sourceMappingURL=LeaderCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","Button","Text","View","Image","useColors","LeadersHelpers","moment","LeaderCard","direction","leader","player","category","show_view_profile","onSelectLeader","Colors","createElement","float","style","padding","borderRadius","onPress","type","borderTopRightRadius","borderTopLeftRadius","theme","textAlign","color","text","success","formatPlace","place","alignSelf","margin","source","uri","profile_pic","height","width","resizeMode","transparent","borderTopWidth","borderColor","borders","light","borderBottomRightRadius","borderBottomLeftRadius","action","stat_label_loc","stat_label","category_score","toFixed","flexDirection","alignItems","borderRightWidth","marginLeft","flex","username","marginTop","create_datetime","fromNow","disabled","title","console","log","marginRight"],"sourceRoot":"../../../../src","sources":["Leaders/components/LeaderCard.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,196 @@
1
+ import React, { useEffect, useState } from 'react';
2
+ import { Button, Text, View } from "../../Components/Themed";
3
+ import { LeadersApi } from '../api';
4
+ import LeaderCard from './LeaderCard';
5
+ import { useColors } from '../../constants/useColors';
6
+ import { ActivityIndicator, FlatList } from 'react-native';
7
+ const LeaderboardCard = ({
8
+ category_id,
9
+ timerange_id,
10
+ player_id,
11
+ onSeeFull,
12
+ onSelectPlayer
13
+ }) => {
14
+ const Colors = useColors();
15
+ const [selected_leader, setSelectedLeader] = useState({});
16
+ const {
17
+ leader,
18
+ player
19
+ } = selected_leader;
20
+ const [my_data, setMyData] = useState({});
21
+ const {
22
+ me,
23
+ my_leader
24
+ } = my_data;
25
+ const [leaders_data, setLeadersData] = useState({
26
+ loading: false,
27
+ leaders: [],
28
+ players: [],
29
+ offset: 0
30
+ });
31
+ const {
32
+ loading,
33
+ leaders,
34
+ players,
35
+ timerange,
36
+ category
37
+ } = leaders_data;
38
+ useEffect(() => {
39
+ LeadersApi.setEnvironment();
40
+ if (!timerange_id || !category_id) {
41
+ return;
42
+ }
43
+ getLeaders(category_id, timerange_id, 0);
44
+ }, [timerange_id, category_id, player_id]);
45
+ const getLeaders = async (category_id, timerange_id, page) => {
46
+ setLeadersData({
47
+ ...leaders_data,
48
+ loading: true
49
+ });
50
+ const resp = await LeadersApi.getLeaders(category_id, timerange_id, page, player_id);
51
+ if (!resp) {
52
+ setLeadersData({
53
+ ...leaders_data,
54
+ loading: false
55
+ });
56
+ return alert('Unable to get leaderboard');
57
+ }
58
+ const player_ids = resp.leaders.map(l => l.player_id);
59
+ const players = await LeadersApi.getPlayersByPlayerIds(player_ids);
60
+ if (page == 0 && player_id) {
61
+ let me_player = players.find(p => p.player_id == player_id);
62
+ let me_leader = resp.leaders.find(l => l.player_id == player_id);
63
+ setMyData({
64
+ me: me_player,
65
+ my_leader: me_leader
66
+ });
67
+ }
68
+ setLeadersData({
69
+ ...leaders_data,
70
+ loading: false,
71
+ category: resp.category,
72
+ timerange: resp.timerange,
73
+ leaders: resp.leaders,
74
+ offset: page,
75
+ players
76
+ });
77
+ };
78
+ const renderLeaders = data => {
79
+ if (!category) {
80
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
81
+ }
82
+ const l_player = players.find(p => p.player_id == data.item.player_id);
83
+ if (!l_player) {
84
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
85
+ }
86
+ const selected = player?.player_id == data.item.player_id ? true : false;
87
+ return /*#__PURE__*/React.createElement(View, {
88
+ transparent: true,
89
+ style: {
90
+ margin: 4,
91
+ borderWidth: selected ? 1 : 0,
92
+ borderColor: Colors.text.success,
93
+ borderRadius: 12
94
+ }
95
+ }, /*#__PURE__*/React.createElement(LeaderCard, {
96
+ leader: data.item,
97
+ player: l_player,
98
+ category: category,
99
+ direction: "vertical",
100
+ onSelectLeader: (l, p) => {
101
+ if (player?.player_id == data.item.player_id) {
102
+ return setSelectedLeader({});
103
+ }
104
+ setSelectedLeader({
105
+ leader: l,
106
+ player: p
107
+ });
108
+ }
109
+ }));
110
+ };
111
+ if (!timerange || !category) {
112
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
113
+ }
114
+ return /*#__PURE__*/React.createElement(View, {
115
+ style: {
116
+ flex: 1
117
+ }
118
+ }, /*#__PURE__*/React.createElement(View, {
119
+ type: "header",
120
+ style: {
121
+ flexDirection: 'row',
122
+ alignItems: 'center',
123
+ padding: 15
124
+ }
125
+ }, /*#__PURE__*/React.createElement(View, {
126
+ transparent: true,
127
+ style: {
128
+ flex: 1
129
+ }
130
+ }, /*#__PURE__*/React.createElement(Text, {
131
+ theme: "h1"
132
+ }, "Leaders by ", category.name), /*#__PURE__*/React.createElement(Text, {
133
+ theme: "description",
134
+ style: {
135
+ marginTop: 3
136
+ }
137
+ }, timerange.name, " (", timerange.order_minimum, " Bets Minimum)")), /*#__PURE__*/React.createElement(Button, {
138
+ title: "See Full Leaderboard",
139
+ style: {
140
+ padding: 10
141
+ },
142
+ type: "text",
143
+ onPress: () => onSeeFull()
144
+ })), /*#__PURE__*/React.createElement(View, {
145
+ style: {
146
+ flex: 1,
147
+ padding: 10
148
+ }
149
+ }, /*#__PURE__*/React.createElement(View, {
150
+ style: {
151
+ flexDirection: 'row'
152
+ }
153
+ }, my_leader && me ? /*#__PURE__*/React.createElement(View, {
154
+ style: {
155
+ margin: 4
156
+ }
157
+ }, /*#__PURE__*/React.createElement(LeaderCard, {
158
+ leader: my_leader,
159
+ player: me,
160
+ onSelectLeader: () => console.log(''),
161
+ direction: "vertical",
162
+ category: category
163
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null), loading ? /*#__PURE__*/React.createElement(ActivityIndicator, {
164
+ style: {
165
+ padding: 10,
166
+ alignSelf: 'center'
167
+ },
168
+ color: Colors.text.h1,
169
+ size: "large"
170
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(View, {
171
+ style: {
172
+ flex: 1,
173
+ borderLeftWidth: 1,
174
+ borderColor: Colors.borders.light
175
+ }
176
+ }, /*#__PURE__*/React.createElement(FlatList, {
177
+ key: 'leader_list',
178
+ data: leaders,
179
+ showsHorizontalScrollIndicator: false,
180
+ horizontal: true,
181
+ keyExtractor: item => item.leader_id.toString(),
182
+ renderItem: renderLeaders
183
+ }))), leader && player ? /*#__PURE__*/React.createElement(View, {
184
+ style: {
185
+ margin: 5
186
+ }
187
+ }, /*#__PURE__*/React.createElement(LeaderCard, {
188
+ leader: leader,
189
+ player: player,
190
+ category: category,
191
+ show_view_profile: true,
192
+ onSelectLeader: onSelectPlayer
193
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null)));
194
+ };
195
+ export default LeaderboardCard;
196
+ //# sourceMappingURL=LeaderboardCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","useEffect","useState","Button","Text","View","LeadersApi","LeaderCard","useColors","ActivityIndicator","FlatList","LeaderboardCard","category_id","timerange_id","player_id","onSeeFull","onSelectPlayer","Colors","selected_leader","setSelectedLeader","leader","player","my_data","setMyData","me","my_leader","leaders_data","setLeadersData","loading","leaders","players","offset","timerange","category","setEnvironment","getLeaders","page","resp","alert","player_ids","map","l","getPlayersByPlayerIds","me_player","find","p","me_leader","renderLeaders","data","createElement","Fragment","l_player","item","selected","transparent","style","margin","borderWidth","borderColor","text","success","borderRadius","direction","onSelectLeader","flex","type","flexDirection","alignItems","padding","theme","name","marginTop","order_minimum","title","onPress","console","log","alignSelf","color","h1","size","borderLeftWidth","borders","light","key","showsHorizontalScrollIndicator","horizontal","keyExtractor","leader_id","toString","renderItem","show_view_profile"],"sourceRoot":"../../../../src","sources":["Leaders/components/LeaderboardCard.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,315 @@
1
+ import React, { useEffect, useState } from 'react';
2
+ import { Button, Text, View } from "../Components/Themed";
3
+ import { LeadersApi } from './api';
4
+ import { ActivityIndicator, FlatList } from 'react-native';
5
+ import { Checkbox, Icons, Toggle } from '../Components';
6
+ import LeaderCard from './components/LeaderCard';
7
+ import Pagination from '../Components/Pagination';
8
+ import { useColors } from '../constants/useColors';
9
+ const sections = ['header', 'timeranges', 'my_leader', 'pagination', 'leaders'];
10
+ const Leaderboard = ({
11
+ player_id,
12
+ stat,
13
+ range_days
14
+ }) => {
15
+ const Colors = useColors();
16
+ const [static_data, setStaticData] = useState({
17
+ time_ranges: [],
18
+ categories: [],
19
+ show_categories: false
20
+ });
21
+ const {
22
+ time_ranges,
23
+ categories,
24
+ show_categories
25
+ } = static_data;
26
+ const [my_data, setMyData] = useState({});
27
+ const {
28
+ me,
29
+ my_leader
30
+ } = my_data;
31
+ const [leaders_data, setLeadersData] = useState({
32
+ loading: false,
33
+ leaders: [],
34
+ players: [],
35
+ offset: 0
36
+ });
37
+ const {
38
+ loading,
39
+ leaders,
40
+ players,
41
+ timerange_id,
42
+ category_id,
43
+ offset
44
+ } = leaders_data;
45
+ const timerange = time_ranges.find(t => t.timerange_id == timerange_id);
46
+ const category = categories.find(c => c.category_id == category_id);
47
+ useEffect(() => {
48
+ LeadersApi.setEnvironment();
49
+ start_up(stat);
50
+ }, [stat, range_days, player_id]);
51
+ const start_up = async (stat, range_days) => {
52
+ let data = await getStaticData();
53
+ let category = data.categories.find(c => c.stat == stat);
54
+ if (!category) {
55
+ category = data.categories[0];
56
+ }
57
+ let range = data.time_ranges.find(r => r.range_days == range_days);
58
+ if (!range) {
59
+ range = data.time_ranges[0];
60
+ }
61
+ if (!category || !range) {
62
+ return alert('Unable to load leaderboard');
63
+ }
64
+ getLeaders(category.category_id, range.timerange_id, 0);
65
+ };
66
+ const getLeaders = async (category_id, timerange_id, page) => {
67
+ setLeadersData({
68
+ ...leaders_data,
69
+ loading: true
70
+ });
71
+ const resp = await LeadersApi.getLeaders(category_id, timerange_id, page, player_id);
72
+ if (!resp) {
73
+ setLeadersData({
74
+ ...leaders_data,
75
+ loading: false
76
+ });
77
+ return alert('Unable to get leaderboard');
78
+ }
79
+ const player_ids = resp.leaders.map(l => l.player_id);
80
+ const players = await LeadersApi.getPlayersByPlayerIds(player_ids);
81
+ if (page == 0 && player_id) {
82
+ let me_player = players.find(p => p.player_id == player_id);
83
+ let me_leader = resp.leaders.find(l => l.player_id == player_id);
84
+ setMyData({
85
+ me: me_player,
86
+ my_leader: me_leader
87
+ });
88
+ }
89
+ setLeadersData({
90
+ ...leaders_data,
91
+ loading: false,
92
+ category_id,
93
+ timerange_id,
94
+ leaders: resp.leaders,
95
+ offset: page,
96
+ players
97
+ });
98
+ };
99
+ const getStaticData = async () => {
100
+ //Start Loading
101
+ const resp = await LeadersApi.getCategories();
102
+ setStaticData({
103
+ categories: resp.categories,
104
+ time_ranges: resp.time_ranges,
105
+ show_categories: false
106
+ });
107
+ return resp;
108
+ };
109
+ const renderLeaders = data => {
110
+ if (!category) {
111
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
112
+ }
113
+ const player = players.find(p => p.player_id == data.item.player_id);
114
+ if (!player) {
115
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
116
+ }
117
+ return /*#__PURE__*/React.createElement(View, {
118
+ transparent: true,
119
+ style: {
120
+ margin: 4
121
+ }
122
+ }, /*#__PURE__*/React.createElement(LeaderCard, {
123
+ leader: data.item,
124
+ player: player,
125
+ category: category,
126
+ onSelectLeader: (l, p) => console.log(l, p)
127
+ }));
128
+ };
129
+ const renderCategories = data => {
130
+ if (!timerange_id) {
131
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
132
+ }
133
+ const checked = category_id == data.item.category_id ? true : false;
134
+ return /*#__PURE__*/React.createElement(Button, {
135
+ style: {
136
+ flexDirection: 'row',
137
+ alignItems: 'center',
138
+ padding: 15,
139
+ borderBottomWidth: 1,
140
+ borderColor: Colors.borders.light
141
+ },
142
+ onPress: () => {
143
+ getLeaders(data.item.category_id, timerange_id, 0);
144
+ setStaticData({
145
+ ...static_data,
146
+ show_categories: false
147
+ });
148
+ }
149
+ }, /*#__PURE__*/React.createElement(Checkbox, {
150
+ color: Colors.text.action,
151
+ disabled: true,
152
+ fill_style: {
153
+ borderRadius: 100
154
+ },
155
+ style: {
156
+ borderRadius: 100
157
+ },
158
+ checked: checked,
159
+ onSelect: () => console.log('')
160
+ }), /*#__PURE__*/React.createElement(View, {
161
+ transparent: true,
162
+ style: {
163
+ flex: 1,
164
+ marginLeft: 10
165
+ }
166
+ }, /*#__PURE__*/React.createElement(Text, {
167
+ theme: "action"
168
+ }, data.item.name)));
169
+ };
170
+ const renderSections = data => {
171
+ switch (data.item) {
172
+ case 'header':
173
+ if (!category || !timerange) {
174
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
175
+ }
176
+ return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(View, {
177
+ type: "header",
178
+ style: {
179
+ flexDirection: 'row',
180
+ alignItems: 'center',
181
+ padding: 15
182
+ }
183
+ }, /*#__PURE__*/React.createElement(View, {
184
+ transparent: true,
185
+ style: {
186
+ flex: 1
187
+ }
188
+ }, /*#__PURE__*/React.createElement(Text, {
189
+ theme: "h1"
190
+ }, "Leaders by ", category.name), /*#__PURE__*/React.createElement(Text, {
191
+ theme: "description",
192
+ style: {
193
+ marginTop: 3
194
+ }
195
+ }, timerange.name, " (", timerange.order_minimum, " Bets Minimum)")), /*#__PURE__*/React.createElement(Button, {
196
+ float: true,
197
+ style: {
198
+ flexDirection: 'row',
199
+ padding: 15,
200
+ alignItems: 'center'
201
+ },
202
+ onPress: () => setStaticData({
203
+ ...static_data,
204
+ show_categories: !show_categories
205
+ })
206
+ }, /*#__PURE__*/React.createElement(Text, {
207
+ theme: "action",
208
+ size: 14,
209
+ style: {
210
+ marginRight: 5
211
+ }
212
+ }, category?.name ?? 'Select Category'), /*#__PURE__*/React.createElement(Icons.ChevronIcon, {
213
+ size: 8,
214
+ direction: show_categories ? 'up' : 'down',
215
+ color: Colors.text.action
216
+ }))), show_categories ? /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(FlatList, {
217
+ data: categories,
218
+ key: 'category_list',
219
+ keyExtractor: item => item.category_id.toString(),
220
+ renderItem: renderCategories
221
+ })) : /*#__PURE__*/React.createElement(React.Fragment, null));
222
+ case 'timeranges':
223
+ return /*#__PURE__*/React.createElement(View, {
224
+ style: {
225
+ padding: 5
226
+ }
227
+ }, /*#__PURE__*/React.createElement(Toggle, {
228
+ options: time_ranges.map(c => {
229
+ return {
230
+ key: c.range_days.toString(),
231
+ label: c.name
232
+ };
233
+ }),
234
+ selected_option: timerange?.range_days?.toString(),
235
+ onSelectOption: option => {
236
+ let selected_range = time_ranges.find(c => c.range_days.toString() == option);
237
+ if (!selected_range || !category_id) {
238
+ return;
239
+ }
240
+ getLeaders(category_id, selected_range.timerange_id, 0);
241
+ }
242
+ }));
243
+ case 'pagination':
244
+ if (!category_id || !timerange_id) {
245
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
246
+ }
247
+ return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(Pagination, {
248
+ offset: offset,
249
+ onNext: () => getLeaders(category_id, timerange_id, offset + 1),
250
+ onPrevious: () => getLeaders(category_id, timerange_id, offset - 1)
251
+ }));
252
+ case 'my_leader':
253
+ if (!my_leader) {
254
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
255
+ }
256
+ if (!me) {
257
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
258
+ }
259
+ if (!category) {
260
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
261
+ }
262
+ return /*#__PURE__*/React.createElement(View, {
263
+ type: "header",
264
+ style: {
265
+ padding: 10
266
+ }
267
+ }, /*#__PURE__*/React.createElement(Text, {
268
+ style: {
269
+ marginBottom: 10
270
+ },
271
+ theme: "h1"
272
+ }, "Your Place"), /*#__PURE__*/React.createElement(LeaderCard, {
273
+ leader: my_leader,
274
+ player: me,
275
+ category: category,
276
+ onSelectLeader: (l, p) => console.log(l, p)
277
+ }));
278
+ case 'leaders':
279
+ return /*#__PURE__*/React.createElement(View, {
280
+ style: {
281
+ padding: 10
282
+ }
283
+ }, loading ? /*#__PURE__*/React.createElement(ActivityIndicator, {
284
+ style: {
285
+ padding: 10,
286
+ alignSelf: 'center'
287
+ },
288
+ size: 'large',
289
+ color: Colors.text.h1
290
+ }) : /*#__PURE__*/React.createElement(React.Fragment, null), /*#__PURE__*/React.createElement(FlatList, {
291
+ data: leaders.sort((a, b) => a.place - b.place),
292
+ key: 'leaders_list',
293
+ renderItem: renderLeaders,
294
+ keyExtractor: item => item.leader_id.toString()
295
+ }));
296
+ default:
297
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
298
+ }
299
+ };
300
+ return /*#__PURE__*/React.createElement(View, null, /*#__PURE__*/React.createElement(FlatList, {
301
+ data: sections,
302
+ key: `leaders_sections`,
303
+ keyExtractor: item => item,
304
+ renderItem: renderSections,
305
+ refreshing: loading,
306
+ onRefresh: () => {
307
+ if (!category_id || !timerange_id) {
308
+ return console.log('');
309
+ }
310
+ getLeaders(category_id, timerange_id, 0);
311
+ }
312
+ }));
313
+ };
314
+ export default Leaderboard;
315
+ //# sourceMappingURL=index.js.map