react-native-salespanda 0.4.2 → 0.4.4

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 (173) hide show
  1. package/lib/module/SalespandaApp.js +11 -37
  2. package/lib/module/SalespandaApp.js.map +1 -1
  3. package/lib/module/assets/images/index.js +22 -1
  4. package/lib/module/assets/images/index.js.map +1 -1
  5. package/lib/module/components/BottomSheet.js +141 -0
  6. package/lib/module/components/BottomSheet.js.map +1 -0
  7. package/lib/module/components/ContactViaModal.js +68 -0
  8. package/lib/module/components/ContactViaModal.js.map +1 -0
  9. package/lib/module/components/ScreenHeader.js +63 -0
  10. package/lib/module/components/ScreenHeader.js.map +1 -0
  11. package/lib/module/components/SearchBar.js +57 -0
  12. package/lib/module/components/SearchBar.js.map +1 -0
  13. package/lib/module/components/TabsHeader.js +80 -0
  14. package/lib/module/components/TabsHeader.js.map +1 -0
  15. package/lib/module/components/index.js +8 -0
  16. package/lib/module/components/index.js.map +1 -0
  17. package/lib/module/constants/Colors.js +3 -2
  18. package/lib/module/constants/Colors.js.map +1 -1
  19. package/lib/module/index.js +6 -4
  20. package/lib/module/index.js.map +1 -1
  21. package/lib/module/navigation/AppNavigator.js +5 -4
  22. package/lib/module/navigation/AppNavigator.js.map +1 -1
  23. package/lib/module/navigation/BottomTabNavigator.js +42 -23
  24. package/lib/module/navigation/BottomTabNavigator.js.map +1 -1
  25. package/lib/module/navigation/DrawerNavigator.js +36 -34
  26. package/lib/module/navigation/DrawerNavigator.js.map +1 -1
  27. package/lib/module/navigation/StackNavigator.js +23 -0
  28. package/lib/module/navigation/StackNavigator.js.map +1 -0
  29. package/lib/module/screens/CRM/AddContactModal.js +49 -0
  30. package/lib/module/screens/CRM/AddContactModal.js.map +1 -0
  31. package/lib/module/screens/CRM/CategoryTabs.js +70 -0
  32. package/lib/module/screens/CRM/CategoryTabs.js.map +1 -0
  33. package/lib/module/screens/CRM/ContactItem.js +168 -0
  34. package/lib/module/screens/CRM/ContactItem.js.map +1 -0
  35. package/lib/module/screens/CRM/FilterDropdown.js +39 -0
  36. package/lib/module/screens/CRM/FilterDropdown.js.map +1 -0
  37. package/lib/module/screens/CRM/FunnelChart.js +105 -0
  38. package/lib/module/screens/CRM/FunnelChart.js.map +1 -0
  39. package/lib/module/screens/CRM/InfoCard.js +56 -0
  40. package/lib/module/screens/CRM/InfoCard.js.map +1 -0
  41. package/lib/module/screens/CRM/LeadCard.js +76 -0
  42. package/lib/module/screens/CRM/LeadCard.js.map +1 -0
  43. package/lib/module/screens/CRM/LogCallScreen.js +271 -0
  44. package/lib/module/screens/CRM/LogCallScreen.js.map +1 -0
  45. package/lib/module/screens/CRM/TopTabs.js +63 -0
  46. package/lib/module/screens/CRM/TopTabs.js.map +1 -0
  47. package/lib/module/screens/CRM/index.js +13 -0
  48. package/lib/module/screens/CRM/index.js.map +1 -0
  49. package/lib/module/screens/ReportsScreen.js +6 -4
  50. package/lib/module/screens/ReportsScreen.js.map +1 -1
  51. package/lib/module/screens/Tabs/ActivityAnalytics.js +29 -0
  52. package/lib/module/screens/Tabs/ActivityAnalytics.js.map +1 -0
  53. package/lib/module/screens/Tabs/CRMScreen.js +316 -0
  54. package/lib/module/screens/Tabs/CRMScreen.js.map +1 -0
  55. package/lib/module/screens/Tabs/DigitalDiary.js +39 -0
  56. package/lib/module/screens/Tabs/DigitalDiary.js.map +1 -0
  57. package/lib/module/screens/Tabs/HomeScreen.js +240 -0
  58. package/lib/module/screens/Tabs/HomeScreen.js.map +1 -0
  59. package/lib/module/screens/Tabs/NotificationsScreen.js +29 -0
  60. package/lib/module/screens/Tabs/NotificationsScreen.js.map +1 -0
  61. package/lib/module/screens/contentliberary/contentliberary.js +283 -0
  62. package/lib/module/screens/contentliberary/contentliberary.js.map +1 -0
  63. package/lib/typescript/src/SalespandaApp.d.ts +2 -2
  64. package/lib/typescript/src/SalespandaApp.d.ts.map +1 -1
  65. package/lib/typescript/src/components/BottomSheet.d.ts +16 -0
  66. package/lib/typescript/src/components/BottomSheet.d.ts.map +1 -0
  67. package/lib/typescript/src/components/ContactViaModal.d.ts +13 -0
  68. package/lib/typescript/src/components/ContactViaModal.d.ts.map +1 -0
  69. package/lib/typescript/src/components/ScreenHeader.d.ts +8 -0
  70. package/lib/typescript/src/components/ScreenHeader.d.ts.map +1 -0
  71. package/lib/typescript/src/components/SearchBar.d.ts +8 -0
  72. package/lib/typescript/src/components/SearchBar.d.ts.map +1 -0
  73. package/lib/typescript/src/components/TabsHeader.d.ts +8 -0
  74. package/lib/typescript/src/components/TabsHeader.d.ts.map +1 -0
  75. package/lib/typescript/src/components/index.d.ts +5 -0
  76. package/lib/typescript/src/components/index.d.ts.map +1 -0
  77. package/lib/typescript/src/constants/Colors.d.ts +2 -1
  78. package/lib/typescript/src/constants/Colors.d.ts.map +1 -1
  79. package/lib/typescript/src/index.d.ts +4 -4
  80. package/lib/typescript/src/index.d.ts.map +1 -1
  81. package/lib/typescript/src/navigation/AppNavigator.d.ts +2 -1
  82. package/lib/typescript/src/navigation/AppNavigator.d.ts.map +1 -1
  83. package/lib/typescript/src/navigation/BottomTabNavigator.d.ts +9 -1
  84. package/lib/typescript/src/navigation/BottomTabNavigator.d.ts.map +1 -1
  85. package/lib/typescript/src/navigation/DrawerNavigator.d.ts +3 -1
  86. package/lib/typescript/src/navigation/DrawerNavigator.d.ts.map +1 -1
  87. package/lib/typescript/src/navigation/StackNavigator.d.ts +13 -0
  88. package/lib/typescript/src/navigation/StackNavigator.d.ts.map +1 -0
  89. package/lib/typescript/src/screens/CRM/AddContactModal.d.ts +11 -0
  90. package/lib/typescript/src/screens/CRM/AddContactModal.d.ts.map +1 -0
  91. package/lib/typescript/src/screens/CRM/CategoryTabs.d.ts +7 -0
  92. package/lib/typescript/src/screens/CRM/CategoryTabs.d.ts.map +1 -0
  93. package/lib/typescript/src/screens/CRM/ContactItem.d.ts +19 -0
  94. package/lib/typescript/src/screens/CRM/ContactItem.d.ts.map +1 -0
  95. package/lib/typescript/src/screens/CRM/FilterDropdown.d.ts +6 -0
  96. package/lib/typescript/src/screens/CRM/FilterDropdown.d.ts.map +1 -0
  97. package/lib/typescript/src/screens/CRM/FunnelChart.d.ts +17 -0
  98. package/lib/typescript/src/screens/CRM/FunnelChart.d.ts.map +1 -0
  99. package/lib/typescript/src/screens/CRM/InfoCard.d.ts +7 -0
  100. package/lib/typescript/src/screens/CRM/InfoCard.d.ts.map +1 -0
  101. package/lib/typescript/src/screens/CRM/LeadCard.d.ts +9 -0
  102. package/lib/typescript/src/screens/CRM/LeadCard.d.ts.map +1 -0
  103. package/lib/typescript/src/screens/CRM/LogCallScreen.d.ts +12 -0
  104. package/lib/typescript/src/screens/CRM/LogCallScreen.d.ts.map +1 -0
  105. package/lib/typescript/src/screens/CRM/TopTabs.d.ts +12 -0
  106. package/lib/typescript/src/screens/CRM/TopTabs.d.ts.map +1 -0
  107. package/lib/typescript/src/screens/CRM/index.d.ts +10 -0
  108. package/lib/typescript/src/screens/CRM/index.d.ts.map +1 -0
  109. package/lib/typescript/src/screens/ReportsScreen.d.ts +2 -1
  110. package/lib/typescript/src/screens/ReportsScreen.d.ts.map +1 -1
  111. package/lib/typescript/src/screens/Tabs/ActivityAnalytics.d.ts +3 -0
  112. package/lib/typescript/src/screens/Tabs/ActivityAnalytics.d.ts.map +1 -0
  113. package/lib/typescript/src/screens/Tabs/CRMScreen.d.ts +3 -0
  114. package/lib/typescript/src/screens/Tabs/CRMScreen.d.ts.map +1 -0
  115. package/lib/typescript/src/screens/Tabs/DigitalDiary.d.ts +3 -0
  116. package/lib/typescript/src/screens/Tabs/DigitalDiary.d.ts.map +1 -0
  117. package/lib/typescript/src/screens/Tabs/HomeScreen.d.ts +4 -0
  118. package/lib/typescript/src/screens/Tabs/HomeScreen.d.ts.map +1 -0
  119. package/lib/typescript/src/screens/Tabs/NotificationsScreen.d.ts +3 -0
  120. package/lib/typescript/src/screens/Tabs/NotificationsScreen.d.ts.map +1 -0
  121. package/lib/typescript/src/screens/contentliberary/contentliberary.d.ts +2 -0
  122. package/lib/typescript/src/screens/contentliberary/contentliberary.d.ts.map +1 -0
  123. package/package.json +6 -2
  124. package/src/SalespandaApp.tsx +12 -36
  125. package/src/components/BottomSheet.tsx +146 -0
  126. package/src/components/ContactViaModal.tsx +80 -0
  127. package/src/components/ScreenHeader.tsx +57 -0
  128. package/src/components/SearchBar.tsx +59 -0
  129. package/src/components/TabsHeader.tsx +72 -0
  130. package/src/components/index.ts +5 -0
  131. package/src/constants/Colors.ts +2 -1
  132. package/src/index.tsx +6 -4
  133. package/src/navigation/AppNavigator.tsx +6 -4
  134. package/src/navigation/BottomTabNavigator.tsx +51 -22
  135. package/src/navigation/DrawerNavigator.tsx +38 -33
  136. package/src/navigation/StackNavigator.tsx +32 -0
  137. package/src/screens/CRM/AddContactModal.tsx +57 -0
  138. package/src/screens/CRM/CategoryTabs.tsx +109 -0
  139. package/src/screens/CRM/ContactItem.tsx +168 -0
  140. package/src/screens/CRM/FilterDropdown.tsx +34 -0
  141. package/src/screens/CRM/FunnelChart.tsx +103 -0
  142. package/src/screens/CRM/InfoCard.tsx +51 -0
  143. package/src/screens/CRM/LeadCard.tsx +69 -0
  144. package/src/screens/CRM/LogCallScreen.tsx +318 -0
  145. package/src/screens/CRM/TopTabs.tsx +95 -0
  146. package/src/screens/CRM/index.ts +10 -0
  147. package/src/screens/ReportsScreen.tsx +7 -4
  148. package/src/screens/Tabs/ActivityAnalytics.tsx +25 -0
  149. package/src/screens/Tabs/CRMScreen.tsx +381 -0
  150. package/src/screens/Tabs/DigitalDiary.tsx +35 -0
  151. package/src/screens/Tabs/HomeScreen.tsx +223 -0
  152. package/src/screens/Tabs/NotificationsScreen.tsx +25 -0
  153. package/src/screens/contentliberary/contentliberary.tsx +268 -0
  154. package/lib/module/screens/CRMScreen.js +0 -41
  155. package/lib/module/screens/CRMScreen.js.map +0 -1
  156. package/lib/module/screens/HomeScreen.js +0 -211
  157. package/lib/module/screens/HomeScreen.js.map +0 -1
  158. package/lib/module/screens/NotificationsScreen.js +0 -41
  159. package/lib/module/screens/NotificationsScreen.js.map +0 -1
  160. package/lib/module/screens/ProfileScreen.js +0 -41
  161. package/lib/module/screens/ProfileScreen.js.map +0 -1
  162. package/lib/typescript/src/screens/CRMScreen.d.ts +0 -2
  163. package/lib/typescript/src/screens/CRMScreen.d.ts.map +0 -1
  164. package/lib/typescript/src/screens/HomeScreen.d.ts +0 -2
  165. package/lib/typescript/src/screens/HomeScreen.d.ts.map +0 -1
  166. package/lib/typescript/src/screens/NotificationsScreen.d.ts +0 -2
  167. package/lib/typescript/src/screens/NotificationsScreen.d.ts.map +0 -1
  168. package/lib/typescript/src/screens/ProfileScreen.d.ts +0 -2
  169. package/lib/typescript/src/screens/ProfileScreen.d.ts.map +0 -1
  170. package/src/screens/CRMScreen.tsx +0 -34
  171. package/src/screens/HomeScreen.tsx +0 -201
  172. package/src/screens/NotificationsScreen.tsx +0 -34
  173. package/src/screens/ProfileScreen.tsx +0 -34
@@ -1,34 +0,0 @@
1
- import { View, Text, StyleSheet, ScrollView } from 'react-native';
2
- import { SafeAreaView } from 'react-native-safe-area-context';
3
- import { Colors } from '../constants/Colors';
4
-
5
- export default function CRMScreen() {
6
- return (
7
- <SafeAreaView style={styles.container} edges={['bottom']}>
8
- <View style={styles.header}>
9
- <Text style={styles.headerTitle}>CRM</Text>
10
- </View>
11
- <ScrollView style={styles.scrollView} />
12
- </SafeAreaView>
13
- );
14
- }
15
-
16
- const styles = StyleSheet.create({
17
- container: {
18
- flex: 1,
19
- backgroundColor: Colors.background,
20
- },
21
- header: {
22
- backgroundColor: Colors.white,
23
- padding: 16,
24
- },
25
- headerTitle: {
26
- fontSize: 20,
27
- fontWeight: '600',
28
- color: Colors.black,
29
- textAlign: 'center',
30
- },
31
- scrollView: {
32
- flex: 1,
33
- },
34
- });
@@ -1,201 +0,0 @@
1
- import React from 'react';
2
- import {
3
- View,
4
- Text,
5
- StyleSheet,
6
- TouchableOpacity,
7
- ScrollView,
8
- Image,
9
- FlatList,
10
- Dimensions,
11
- } from 'react-native';
12
- import { Colors } from '../constants/Colors';
13
-
14
- interface MenuItemProps {
15
- title: string;
16
- icon: string;
17
- onPress?: () => void;
18
- }
19
-
20
- const MenuItem: React.FC<MenuItemProps> = ({ title, icon, onPress }) => {
21
- return (
22
- <TouchableOpacity style={styles.menuItem} onPress={onPress}>
23
- <View style={styles.iconContainer}>
24
- <Text style={styles.iconText}>{icon}</Text>
25
- </View>
26
- <Text style={styles.menuItemText}>{title}</Text>
27
- </TouchableOpacity>
28
- );
29
- };
30
-
31
- export default function HomeScreen() {
32
- const images = [
33
- 'https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?q=80&w=1200&auto=format&fit=crop',
34
- 'https://images.unsplash.com/photo-1482192596544-9eb780fc7f66?q=80&w=1200&auto=format&fit=crop',
35
- 'https://images.unsplash.com/photo-1522071820081-009f0129c71c?q=80&w=1200&auto=format&fit=crop',
36
- 'https://images.unsplash.com/photo-1501785888041-af3ef285b470?q=80&w=1200&auto=format&fit=crop',
37
- 'https://images.unsplash.com/photo-1460353581641-37baddab0fa2?q=80&w=1200&auto=format&fit=crop',
38
- 'https://images.unsplash.com/photo-1496302662116-35cc4f36df92?q=80&w=1200&auto=format&fit=crop',
39
- ];
40
- const screenWidth = Dimensions.get('window').width;
41
- const [activeIndex, setActiveIndex] = React.useState(0);
42
- const flatListRef = React.useRef<any>(null);
43
-
44
- const handleMomentumScrollEnd = (e: any) => {
45
- const offsetX = e.nativeEvent.contentOffset.x;
46
- const index = Math.round(offsetX / screenWidth);
47
- setActiveIndex(index);
48
- };
49
- React.useEffect(() => {
50
- const id = setInterval(() => {
51
- setActiveIndex((prev) => {
52
- const next = (prev + 1) % images.length;
53
- if (flatListRef.current) {
54
- try {
55
- flatListRef.current.scrollToIndex({ index: next, animated: true });
56
- } catch {
57
- // ignore scroll failures
58
- }
59
- }
60
- return next;
61
- });
62
- }, 2500);
63
- return () => clearInterval(id);
64
- }, [images.length]);
65
-
66
- return (
67
- <ScrollView style={styles.scrollView}>
68
- {/* Edge-to-edge Image Carousel */}
69
- <View style={styles.carouselContainer}>
70
- <FlatList
71
- ref={flatListRef}
72
- data={images}
73
- keyExtractor={(_, idx) => `${idx}`}
74
- renderItem={({ item }) => (
75
- <Image
76
- source={{ uri: item }}
77
- style={[styles.carouselImage, { width: screenWidth }]}
78
- />
79
- )}
80
- horizontal
81
- pagingEnabled
82
- showsHorizontalScrollIndicator={false}
83
- onMomentumScrollEnd={handleMomentumScrollEnd}
84
- getItemLayout={(_, index) => ({
85
- length: screenWidth,
86
- offset: screenWidth * index,
87
- index,
88
- })}
89
- />
90
- {/* Overlay Indicators at bottom of the image */}
91
- <View style={styles.carouselIndicatorsOverlay}>
92
- {images.map((_, idx) => (
93
- <View
94
- key={idx}
95
- style={[
96
- styles.indicator,
97
- idx === activeIndex ? styles.activeIndicator : null,
98
- ]}
99
- />
100
- ))}
101
- </View>
102
- </View>
103
-
104
- {/* Menu Grid */}
105
- <View style={styles.menuGrid}>
106
- <MenuItem title="Content Library" icon="📚" />
107
- <MenuItem title="Buy Now" icon="🛒" />
108
- <MenuItem title="Quiz & Calculator" icon="🧮" />
109
-
110
- <MenuItem title="Social Setup" icon="📢" />
111
- <MenuItem title="Microsite Setup" icon="⚙️" />
112
- <MenuItem title="Proposal" icon="📋" />
113
-
114
- <MenuItem title="Email Campaign" icon="📧" />
115
- <MenuItem title="View Microsite" icon="🎵" />
116
- <MenuItem title="Import Contact" icon="📄" />
117
-
118
- <MenuItem title="Poster Of The Week" icon="🖼️" />
119
- <MenuItem title="DigiCard" icon="👤" />
120
- <MenuItem title="Help Videos" icon="❓" />
121
- </View>
122
- </ScrollView>
123
- );
124
- }
125
-
126
- const styles = StyleSheet.create({
127
- scrollView: {
128
- flex: 1,
129
- backgroundColor: Colors.white,
130
- },
131
- carouselContainer: {
132
- width: '100%',
133
- backgroundColor: Colors.white, // subtle backplate for image load
134
- position: 'relative',
135
- },
136
- carouselImage: {
137
- height: 200,
138
- resizeMode: 'cover',
139
- },
140
- carouselIndicatorsOverlay: {
141
- position: 'absolute',
142
- left: 0,
143
- right: 0,
144
- bottom: 12,
145
- flexDirection: 'row',
146
- justifyContent: 'center',
147
- alignItems: 'center',
148
- },
149
- indicator: {
150
- width: 8,
151
- height: 8,
152
- borderRadius: 4,
153
- backgroundColor: Colors.divider,
154
- marginHorizontal: 4,
155
- },
156
- activeIndicator: {
157
- backgroundColor: Colors.white,
158
- width: 24,
159
- },
160
- menuGrid: {
161
- flexDirection: 'row',
162
- flexWrap: 'wrap',
163
- padding: 8,
164
- justifyContent: 'space-between',
165
- },
166
- menuItem: {
167
- width: '31%',
168
- aspectRatio: 1,
169
- backgroundColor: Colors.white,
170
- borderRadius: 16,
171
- padding: 12,
172
- marginBottom: 12,
173
- alignItems: 'center',
174
- justifyContent: 'center',
175
- shadowColor: Colors.black,
176
- shadowOffset: { width: 0, height: 2 },
177
- shadowOpacity: 0.1,
178
- shadowRadius: 4,
179
- elevation: 3,
180
- borderWidth: 1,
181
- borderColor: Colors.border,
182
- },
183
- iconContainer: {
184
- width: 50,
185
- height: 50,
186
- borderRadius: 25,
187
- backgroundColor: Colors.divider,
188
- justifyContent: 'center',
189
- alignItems: 'center',
190
- marginBottom: 8,
191
- },
192
- iconText: {
193
- fontSize: 24,
194
- },
195
- menuItemText: {
196
- fontSize: 11,
197
- textAlign: 'center',
198
- color: Colors.black,
199
- fontWeight: '500',
200
- },
201
- });
@@ -1,34 +0,0 @@
1
- import { View, Text, StyleSheet, ScrollView } from 'react-native';
2
- import { SafeAreaView } from 'react-native-safe-area-context';
3
- import { Colors } from '../constants/Colors';
4
-
5
- export default function NotificationsScreen() {
6
- return (
7
- <SafeAreaView style={styles.container} edges={['bottom']}>
8
- <View style={styles.header}>
9
- <Text style={styles.headerTitle}>Notification</Text>
10
- </View>
11
- <ScrollView style={styles.scrollView} />
12
- </SafeAreaView>
13
- );
14
- }
15
-
16
- const styles = StyleSheet.create({
17
- container: {
18
- flex: 1,
19
- backgroundColor: Colors.background,
20
- },
21
- header: {
22
- backgroundColor: Colors.white,
23
- padding: 16,
24
- },
25
- headerTitle: {
26
- fontSize: 20,
27
- fontWeight: '600',
28
- color: Colors.black,
29
- textAlign: 'center',
30
- },
31
- scrollView: {
32
- flex: 1,
33
- },
34
- });
@@ -1,34 +0,0 @@
1
- import { View, Text, StyleSheet, ScrollView } from 'react-native';
2
- import { SafeAreaView } from 'react-native-safe-area-context';
3
- import { Colors } from '../constants/Colors';
4
-
5
- export default function ProfileScreen() {
6
- return (
7
- <SafeAreaView style={styles.container} edges={['bottom']}>
8
- <View style={styles.header}>
9
- <Text style={styles.headerTitle}>Anyaltics</Text>
10
- </View>
11
- <ScrollView style={styles.scrollView} />
12
- </SafeAreaView>
13
- );
14
- }
15
-
16
- const styles = StyleSheet.create({
17
- container: {
18
- flex: 1,
19
- backgroundColor: Colors.background,
20
- },
21
- header: {
22
- backgroundColor: Colors.white,
23
- padding: 16,
24
- },
25
- headerTitle: {
26
- fontSize: 20,
27
- fontWeight: '600',
28
- color: Colors.black,
29
- textAlign: 'center',
30
- },
31
- scrollView: {
32
- flex: 1,
33
- },
34
- });