be-components 1.9.7 → 1.9.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 (82) hide show
  1. package/lib/commonjs/Components/Icons.js +41 -0
  2. package/lib/commonjs/Components/Icons.js.map +1 -1
  3. package/lib/commonjs/MarketComponents/api/index.js +10 -1
  4. package/lib/commonjs/MarketComponents/api/index.js.map +1 -1
  5. package/lib/commonjs/MarketComponents/components/TeamEventMarket/index.js +13 -2
  6. package/lib/commonjs/MarketComponents/components/TeamEventMarket/index.js.map +1 -1
  7. package/lib/commonjs/Poll/components/CampaignHeader.js +53 -0
  8. package/lib/commonjs/Poll/components/CampaignHeader.js.map +1 -0
  9. package/lib/commonjs/Poll/components/CampaignLeaderboard.js +295 -0
  10. package/lib/commonjs/Poll/components/CampaignLeaderboard.js.map +1 -0
  11. package/lib/commonjs/Poll/components/CampaignPlay.js +11 -89
  12. package/lib/commonjs/Poll/components/CampaignPlay.js.map +1 -1
  13. package/lib/commonjs/Poll/components/CampaignProgressBar.js +0 -1
  14. package/lib/commonjs/Poll/components/CampaignProgressBar.js.map +1 -1
  15. package/lib/commonjs/Poll/components/CampaignResult.js +44 -345
  16. package/lib/commonjs/Poll/components/CampaignResult.js.map +1 -1
  17. package/lib/commonjs/Poll/components/PollCard.js +2 -1
  18. package/lib/commonjs/Poll/components/PollCard.js.map +1 -1
  19. package/lib/commonjs/Poll/components/PollQuestionsSection.js +81 -0
  20. package/lib/commonjs/Poll/components/PollQuestionsSection.js.map +1 -0
  21. package/lib/commonjs/Poll/components/PollSelectCard.js +1 -2
  22. package/lib/commonjs/Poll/components/PollSelectCard.js.map +1 -1
  23. package/lib/commonjs/Poll/index.js +132 -36
  24. package/lib/commonjs/Poll/index.js.map +1 -1
  25. package/lib/module/Components/Icons.js +41 -0
  26. package/lib/module/Components/Icons.js.map +1 -1
  27. package/lib/module/MarketComponents/api/index.js +10 -1
  28. package/lib/module/MarketComponents/api/index.js.map +1 -1
  29. package/lib/module/MarketComponents/components/TeamEventMarket/index.js +13 -2
  30. package/lib/module/MarketComponents/components/TeamEventMarket/index.js.map +1 -1
  31. package/lib/module/Poll/components/CampaignHeader.js +46 -0
  32. package/lib/module/Poll/components/CampaignHeader.js.map +1 -0
  33. package/lib/module/Poll/components/CampaignLeaderboard.js +286 -0
  34. package/lib/module/Poll/components/CampaignLeaderboard.js.map +1 -0
  35. package/lib/module/Poll/components/CampaignPlay.js +11 -89
  36. package/lib/module/Poll/components/CampaignPlay.js.map +1 -1
  37. package/lib/module/Poll/components/CampaignProgressBar.js +0 -1
  38. package/lib/module/Poll/components/CampaignProgressBar.js.map +1 -1
  39. package/lib/module/Poll/components/CampaignResult.js +48 -348
  40. package/lib/module/Poll/components/CampaignResult.js.map +1 -1
  41. package/lib/module/Poll/components/PollCard.js +2 -1
  42. package/lib/module/Poll/components/PollCard.js.map +1 -1
  43. package/lib/module/Poll/components/PollQuestionsSection.js +72 -0
  44. package/lib/module/Poll/components/PollQuestionsSection.js.map +1 -0
  45. package/lib/module/Poll/components/PollSelectCard.js +1 -2
  46. package/lib/module/Poll/components/PollSelectCard.js.map +1 -1
  47. package/lib/module/Poll/index.js +133 -38
  48. package/lib/module/Poll/index.js.map +1 -1
  49. package/lib/typescript/src/Components/Icons.d.ts +1 -0
  50. package/lib/typescript/src/Components/Icons.d.ts.map +1 -1
  51. package/lib/typescript/src/MarketComponents/api/index.d.ts +1 -0
  52. package/lib/typescript/src/MarketComponents/api/index.d.ts.map +1 -1
  53. package/lib/typescript/src/MarketComponents/components/TeamEventMarket/index.d.ts.map +1 -1
  54. package/lib/typescript/src/Poll/components/CampaignHeader.d.ts +9 -0
  55. package/lib/typescript/src/Poll/components/CampaignHeader.d.ts.map +1 -0
  56. package/lib/typescript/src/Poll/components/CampaignLeaderboard.d.ts +12 -0
  57. package/lib/typescript/src/Poll/components/CampaignLeaderboard.d.ts.map +1 -0
  58. package/lib/typescript/src/Poll/components/CampaignPlay.d.ts.map +1 -1
  59. package/lib/typescript/src/Poll/components/CampaignProgressBar.d.ts.map +1 -1
  60. package/lib/typescript/src/Poll/components/CampaignResult.d.ts +3 -7
  61. package/lib/typescript/src/Poll/components/CampaignResult.d.ts.map +1 -1
  62. package/lib/typescript/src/Poll/components/PollCard.d.ts.map +1 -1
  63. package/lib/typescript/src/Poll/components/PollQuestionsSection.d.ts +11 -0
  64. package/lib/typescript/src/Poll/components/PollQuestionsSection.d.ts.map +1 -0
  65. package/lib/typescript/src/Poll/components/PollSelectCard.d.ts +1 -2
  66. package/lib/typescript/src/Poll/components/PollSelectCard.d.ts.map +1 -1
  67. package/lib/typescript/src/Poll/index.d.ts +4 -2
  68. package/lib/typescript/src/Poll/index.d.ts.map +1 -1
  69. package/package.json +1 -1
  70. package/src/Components/Icons.tsx +16 -0
  71. package/src/MarketComponents/api/index.ts +10 -1
  72. package/src/MarketComponents/components/TeamEventMarket/index.tsx +12 -1
  73. package/src/Poll/components/CampaignHeader.tsx +35 -0
  74. package/src/Poll/components/CampaignLeaderboard.tsx +181 -0
  75. package/src/Poll/components/CampaignPlay.tsx +11 -82
  76. package/src/Poll/components/CampaignProgressBar.tsx +0 -1
  77. package/src/Poll/components/CampaignResult.tsx +42 -162
  78. package/src/Poll/components/PollCard.tsx +2 -1
  79. package/src/Poll/components/PollQuestionsSection.tsx +66 -0
  80. package/src/Poll/components/PollSelectCard.tsx +2 -3
  81. package/src/Poll/index.tsx +120 -31
  82. package/src/types.d.ts +1 -0
@@ -9,14 +9,13 @@ type PollSelectCardProps = {
9
9
  poll_campaign:PollCampaignProps,
10
10
  poll:PollProps,
11
11
  disabled?:boolean,
12
- index:number,
13
12
  show_response?:boolean,
14
13
  response_option?:PollOptionProps,
15
14
  poll_response?:PollResponseProps,
16
15
  onSelect:(poll:PollProps) => void
17
16
  }
18
17
 
19
- const PollSelectCard = ({ index, poll, disabled, selected, poll_campaign, poll_response, show_response, response_option, onSelect }:PollSelectCardProps) => {
18
+ const PollSelectCard = ({ poll, disabled, selected, poll_campaign, poll_response, show_response, response_option, onSelect }:PollSelectCardProps) => {
20
19
 
21
20
  const getResultColor = () => {
22
21
  switch(poll_response?.result_ind){
@@ -66,7 +65,7 @@ const PollSelectCard = ({ index, poll, disabled, selected, poll_campaign, poll_r
66
65
  return (
67
66
  <TouchableOpacity disabled={disabled} style={{ padding:10, borderRadius:22, backgroundColor:selected?Colors.highlights.highlight500Faded:undefined, flexDirection:'row' }} onPress={() => onSelect(poll)}>
68
67
  <View style={{ height:20, width:20, borderRadius:100, backgroundColor:Colors.shades.white, marginRight:10, justifyContent:'center' }}>
69
- <Text size={12} color={Colors.brand.midnight} weight='bold' textAlign='center'>{(index + 1).toString()}</Text>
68
+ <Text size={12} color={Colors.brand.midnight} weight='bold' textAlign='center'>{poll.priority}</Text>
70
69
  </View>
71
70
  <View style={{ flex:1 }}>
72
71
  {poll_campaign.campaign_type == 'trivia' && !poll_response && poll.status != 'closed' ?
@@ -1,54 +1,143 @@
1
1
  import React, { useEffect, useState } from 'react';
2
- import CampaignPlay from "./components/CampaignPlay"
3
- import { PollCampaignApi } from './api';
4
- import FlashMarket from './flashmarket';
5
- import { View, useWindowDimensions } from 'react-native';
2
+ import { PollApi, PollCampaignApi } from './api';
3
+ import { View, ScrollView, ActivityIndicator } from 'react-native';
4
+ import type { PollCampaignGoalProps, PollCampaignProps, PollProps, PollResponseProps } from '../types';
5
+ import Colors from '../constants/colors';
6
+ import CampaignHeader from './components/CampaignHeader';
7
+ import CampaignProgressBar from './components/CampaignProgressBar';
8
+ import PollQuestionsSection from './components/PollQuestionsSection';
9
+ import { Spring, Text } from '../Components';
10
+ //import PollCard from './components/PollCard';
11
+ import CampaignResult from './components/CampaignResult';
12
+ import CampaignLeaderboard from './components/CampaignLeaderboard';
6
13
 
7
14
 
8
15
  type PollCampaignModuleProps = {
9
16
  poll_campaign_id:string,
10
17
  poll_id?:string,
11
18
  player_id?:string,
12
- type: 'full' | 'mini',
19
+ height:number,
13
20
  onRequestAuthenticate: (auth_strategy_id?:string, company_id?:string) => void,
21
+ onSharePollCampaign: (poll_campaign:PollCampaignProps) => void,
14
22
  onComplete:() => void
15
23
  }
16
- const PollCampaign = ({ poll_campaign_id, poll_id, type, player_id, onRequestAuthenticate, onComplete }: PollCampaignModuleProps ) => {
17
- const [ loaded, setLoaded ] = useState(false);
24
+ const PollCampaign = ({ height, poll_campaign_id, player_id }: PollCampaignModuleProps ) => {
25
+ const [ module_data, setModuleData ] = useState<{
26
+ loading: boolean,
27
+ active_poll_id?:string,
28
+ poll_campaign?:PollCampaignProps,
29
+ polls:PollProps[],
30
+ poll_campaign_goals:PollCampaignGoalProps[]
31
+ }>({
32
+ loading: false,
33
+ polls: [],
34
+ poll_campaign_goals:[]
35
+ });
36
+ const [ full_leaderboard, setFullLeaderboard ] = useState(false);
37
+ const [ my_data ] = useState<{
38
+ poll_responses:PollResponseProps[]
39
+ }>({
40
+ poll_responses: []
41
+ });
42
+
43
+ const { poll_campaign, polls, active_poll_id } = module_data;
44
+ const active_poll = polls.find(p => p.poll_id == active_poll_id);
45
+ const { poll_responses } = my_data;
18
46
 
19
- const dimensions = useWindowDimensions();
20
-
21
47
  useEffect(() => {
22
48
  PollCampaignApi.setEnvironment();
23
- setLoaded(true)
24
- },[])
25
- if(!loaded){ return <></> }
49
+ getDataFromServer();
50
+ },[poll_campaign_id, player_id])
51
+
52
+ const getDataFromServer = async() => {
53
+ setModuleData({ ...module_data, loading:true });
54
+ const pc = await PollCampaignApi.getPollCampaignById(poll_campaign_id);
55
+ const ps_resp = await PollApi.getPollsByCampaignId(poll_campaign_id);
26
56
 
27
- if(type == 'full' && poll_campaign_id){
28
- let widget_width = dimensions.width
29
- if(widget_width > 600){ widget_width = 600 }
57
+ setModuleData({
58
+ ...module_data,
59
+ poll_campaign: pc,
60
+ polls: ps_resp.polls,
61
+ poll_campaign_goals: ps_resp.poll_campaign_goals,
62
+ loading:false
63
+ })
64
+ }
65
+
66
+ if(!poll_campaign){
30
67
  return (
31
- <View style={{ width: widget_width, alignSelf:'center', height:dimensions.height }}>
32
- <CampaignPlay
33
- player_id={player_id}
34
- onRequestAuthenticate={onRequestAuthenticate}
35
- poll_campaign_id={poll_campaign_id}
36
- onFinished={onComplete}
68
+ <View style={{ flex:1 }}>
69
+ <ActivityIndicator
70
+ style={{ padding:20, alignSelf:'center' }}
71
+ size='large'
72
+ color={Colors.brand.midnight}
37
73
  />
38
74
  </View>
39
75
  )
40
76
  }
41
- if(type == 'mini'){
42
- return (
43
- <FlashMarket
44
- poll_campaign_id={poll_campaign_id}
45
- poll_id={poll_id}
46
- player_id={player_id}
47
- onRequestAuthenticate={onRequestAuthenticate}
77
+
78
+ return (
79
+ <View style={{ backgroundColor:Colors.shades.white, height }}>
80
+ <CampaignHeader
81
+ poll_campaign={poll_campaign}
82
+ onSharePollCampaign={(pc) => console.log(pc)}
48
83
  />
49
- )
50
- }
51
- return <></>
84
+ <ScrollView style={{ flex:1 }}>
85
+ <View style={{ backgroundColor:Colors.shades.shade100 }}>
86
+ <CampaignProgressBar
87
+ poll_campaign={poll_campaign}
88
+ polls={polls}
89
+ active_poll='0'
90
+ onPollSelect={(p) => console.log(p)}
91
+ poll_responses={poll_responses}
92
+ />
93
+ </View>
94
+ <View nativeID='leaderboard'>
95
+ <CampaignResult
96
+ poll_campaign={poll_campaign}
97
+ onShowFullLeaderboard={() => setFullLeaderboard(true)}
98
+ />
99
+ </View>
100
+ <View nativeID='poll_questions'>
101
+ <PollQuestionsSection
102
+ poll_campaign={poll_campaign}
103
+ polls={polls}
104
+ poll_responses={poll_responses}
105
+ onSelectPoll={(p) => setModuleData({ ...module_data, active_poll_id: p.poll_id })}
106
+ />
107
+ </View>
108
+ </ScrollView>
109
+ {active_poll ?
110
+ <View style={{ position:'absolute', top:0, left:0, right:0, bottom:0, justifyContent:'flex-end', backgroundColor:Colors.shades.black_faded }}>
111
+ <Spring
112
+ slide='vertical'
113
+ to={0}
114
+ from={500}
115
+ style={{ maxHeight:height }}
116
+ >
117
+ <Text>HEY</Text>
118
+ </Spring>
119
+ </View>
120
+ :<></>}
121
+ {full_leaderboard ?
122
+ <View style={{ position:'absolute', top:0, left:0, right:0, bottom:0, justifyContent:'flex-end', backgroundColor:Colors.shades.black_faded }}>
123
+ <Spring
124
+ slide='vertical'
125
+ to={0}
126
+ from={500}
127
+ style={{ maxHeight:height }}
128
+ >
129
+ <CampaignLeaderboard
130
+ height={height}
131
+ poll_campaign={poll_campaign}
132
+ view_mode='full'
133
+ onClose={() => setFullLeaderboard(false)}
134
+ />
135
+ </Spring>
136
+ </View>
137
+ :<></>}
138
+ </View>
139
+ )
140
+
52
141
 
53
142
  }
54
143
 
package/src/types.d.ts CHANGED
@@ -116,6 +116,7 @@ export interface EventProps {
116
116
  external_id:string,
117
117
  away_team_id: string,
118
118
  away?:TeamProps
119
+ sponsor_id?:string,
119
120
  away_sub_title?:string,
120
121
  home_team_id:string,
121
122
  home?:TeamProps,