react-native-salespanda 0.2.0 → 0.4.0
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/Salespanda.podspec +4 -0
- package/android/build.gradle +2 -0
- package/lib/module/SalespandaApp.js +70 -0
- package/lib/module/SalespandaApp.js.map +1 -0
- package/lib/module/assets/images/bottomtabs/analytics.png +0 -0
- package/lib/module/assets/images/bottomtabs/analyticsactive.png +0 -0
- package/lib/module/assets/images/bottomtabs/crm.png +0 -0
- package/lib/module/assets/images/bottomtabs/crmactive.png +0 -0
- package/lib/module/assets/images/bottomtabs/diary.png +0 -0
- package/lib/module/assets/images/bottomtabs/diaryactive.png +0 -0
- package/lib/module/assets/images/bottomtabs/home.png +0 -0
- package/lib/module/assets/images/bottomtabs/homeactive.png +0 -0
- package/lib/module/assets/images/bottomtabs/notification.png +0 -0
- package/lib/module/assets/images/bottomtabs/notificationactive.png +0 -0
- package/lib/module/assets/images/index.js +35 -0
- package/lib/module/assets/images/index.js.map +1 -0
- package/lib/module/config/SalespandaConfig.js +68 -0
- package/lib/module/config/SalespandaConfig.js.map +1 -0
- package/lib/module/constants/Colors.js +17 -0
- package/lib/module/constants/Colors.js.map +1 -0
- package/lib/module/constants/GetPlatorm.js +23 -0
- package/lib/module/constants/GetPlatorm.js.map +1 -0
- package/lib/module/index.js +28 -7
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigation/AppNavigator.js +11 -2
- package/lib/module/navigation/AppNavigator.js.map +1 -1
- package/lib/module/navigation/BottomTabNavigator.js +100 -73
- package/lib/module/navigation/BottomTabNavigator.js.map +1 -1
- package/lib/module/navigation/DrawerNavigator.js +214 -127
- package/lib/module/navigation/DrawerNavigator.js.map +1 -1
- package/lib/module/screens/CRMScreen.js +41 -0
- package/lib/module/screens/CRMScreen.js.map +1 -0
- package/lib/module/screens/HomeScreen.js +123 -170
- package/lib/module/screens/HomeScreen.js.map +1 -1
- package/lib/module/screens/NotificationsScreen.js +11 -97
- package/lib/module/screens/NotificationsScreen.js.map +1 -1
- package/lib/module/screens/ProfileScreen.js +13 -119
- package/lib/module/screens/ProfileScreen.js.map +1 -1
- package/lib/module/screens/ReportsScreen.js +11 -187
- package/lib/module/screens/ReportsScreen.js.map +1 -1
- package/lib/typescript/src/SalespandaApp.d.ts +39 -0
- package/lib/typescript/src/SalespandaApp.d.ts.map +1 -0
- package/lib/typescript/src/assets/images/index.d.ts +17 -0
- package/lib/typescript/src/assets/images/index.d.ts.map +1 -0
- package/lib/typescript/src/config/SalespandaConfig.d.ts +52 -0
- package/lib/typescript/src/config/SalespandaConfig.d.ts.map +1 -0
- package/lib/typescript/src/constants/Colors.d.ts +15 -0
- package/lib/typescript/src/constants/Colors.d.ts.map +1 -0
- package/lib/typescript/src/constants/GetPlatorm.d.ts +11 -0
- package/lib/typescript/src/constants/GetPlatorm.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +18 -2
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigation/AppNavigator.d.ts.map +1 -1
- package/lib/typescript/src/navigation/BottomTabNavigator.d.ts.map +1 -1
- package/lib/typescript/src/navigation/DrawerNavigator.d.ts.map +1 -1
- package/lib/typescript/src/screens/CRMScreen.d.ts +2 -0
- package/lib/typescript/src/screens/CRMScreen.d.ts.map +1 -0
- package/lib/typescript/src/screens/HomeScreen.d.ts.map +1 -1
- package/lib/typescript/src/screens/NotificationsScreen.d.ts.map +1 -1
- package/lib/typescript/src/screens/ProfileScreen.d.ts.map +1 -1
- package/lib/typescript/src/screens/ReportsScreen.d.ts +1 -1
- package/lib/typescript/src/screens/ReportsScreen.d.ts.map +1 -1
- package/package.json +20 -11
- package/react-native.config.js +9 -0
- package/src/SalespandaApp.tsx +112 -0
- package/src/assets/images/bottomtabs/analytics.png +0 -0
- package/src/assets/images/bottomtabs/analyticsactive.png +0 -0
- package/src/assets/images/bottomtabs/crm.png +0 -0
- package/src/assets/images/bottomtabs/crmactive.png +0 -0
- package/src/assets/images/bottomtabs/diary.png +0 -0
- package/src/assets/images/bottomtabs/diaryactive.png +0 -0
- package/src/assets/images/bottomtabs/home.png +0 -0
- package/src/assets/images/bottomtabs/homeactive.png +0 -0
- package/src/assets/images/bottomtabs/notification.png +0 -0
- package/src/assets/images/bottomtabs/notificationactive.png +0 -0
- package/src/assets/images/index.js +11 -0
- package/src/assets/images/index.ts +40 -0
- package/src/config/SalespandaConfig.ts +105 -0
- package/src/constants/Colors.ts +16 -0
- package/src/constants/GetPlatorm.ts +29 -0
- package/src/index.tsx +35 -7
- package/src/navigation/AppNavigator.tsx +9 -2
- package/src/navigation/BottomTabNavigator.tsx +110 -51
- package/src/navigation/DrawerNavigator.tsx +179 -126
- package/src/screens/CRMScreen.tsx +34 -0
- package/src/screens/HomeScreen.tsx +110 -143
- package/src/screens/NotificationsScreen.tsx +9 -110
- package/src/screens/ProfileScreen.tsx +10 -97
- package/src/screens/ReportsScreen.tsx +9 -166
- package/lib/module/screens/PremiumScreen.js +0 -222
- package/lib/module/screens/PremiumScreen.js.map +0 -1
- package/lib/typescript/src/screens/PremiumScreen.d.ts +0 -2
- package/lib/typescript/src/screens/PremiumScreen.d.ts.map +0 -1
- package/src/screens/PremiumScreen.tsx +0 -250
package/Salespanda.podspec
CHANGED
|
@@ -16,6 +16,10 @@ Pod::Spec.new do |s|
|
|
|
16
16
|
s.source_files = "ios/**/*.{h,m,mm,cpp}"
|
|
17
17
|
s.private_header_files = "ios/**/*.h"
|
|
18
18
|
|
|
19
|
+
# Include assets (images, fonts, etc.)
|
|
20
|
+
s.resource_bundles = {
|
|
21
|
+
'Salespanda' => ['src/assets/**/*.{png,jpg,jpeg,svg,ttf,otf}']
|
|
22
|
+
}
|
|
19
23
|
|
|
20
24
|
install_modules_dependencies(s)
|
|
21
25
|
end
|
package/android/build.gradle
CHANGED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import React from 'react';
|
|
4
|
+
import { NavigationContainer, DefaultTheme } from '@react-navigation/native';
|
|
5
|
+
import { GestureHandlerRootView } from 'react-native-gesture-handler';
|
|
6
|
+
import DrawerNavigator from "./navigation/DrawerNavigator.js";
|
|
7
|
+
import BottomTabNavigator from "./navigation/BottomTabNavigator.js";
|
|
8
|
+
import { SafeAreaProvider, initialWindowMetrics } from 'react-native-safe-area-context';
|
|
9
|
+
import { Colors } from "./constants/Colors.js";
|
|
10
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
11
|
+
/**
|
|
12
|
+
* Main Salespanda App Component
|
|
13
|
+
* Can be used as a standalone app or embedded in another React Native app
|
|
14
|
+
*/
|
|
15
|
+
export default function SalespandaApp({
|
|
16
|
+
navigationRef,
|
|
17
|
+
theme: customTheme,
|
|
18
|
+
standalone = false,
|
|
19
|
+
onReady,
|
|
20
|
+
useDrawer = true,
|
|
21
|
+
wrapWithGestureHandler = false
|
|
22
|
+
} = {}) {
|
|
23
|
+
// TODO: Apply theme to app (future enhancement)
|
|
24
|
+
// Currently theme is managed through SalespandaConfig
|
|
25
|
+
void customTheme;
|
|
26
|
+
|
|
27
|
+
// Use drawer navigation by default, or bottom tabs only if specified
|
|
28
|
+
const AppContent = () => useDrawer ? /*#__PURE__*/_jsx(DrawerNavigator, {}) : /*#__PURE__*/_jsx(BottomTabNavigator, {});
|
|
29
|
+
|
|
30
|
+
// If standalone mode, don't wrap with NavigationContainer
|
|
31
|
+
// (parent app will provide it)
|
|
32
|
+
if (standalone) {
|
|
33
|
+
return /*#__PURE__*/_jsx(AppContent, {});
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// Navigation content with SafeAreaProvider
|
|
37
|
+
const navTheme = {
|
|
38
|
+
...DefaultTheme,
|
|
39
|
+
colors: {
|
|
40
|
+
...DefaultTheme.colors,
|
|
41
|
+
background: Colors.background,
|
|
42
|
+
primary: Colors.primary,
|
|
43
|
+
card: Colors.white,
|
|
44
|
+
text: Colors.black,
|
|
45
|
+
border: Colors.border
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
const NavigationContent = /*#__PURE__*/_jsx(SafeAreaProvider, {
|
|
49
|
+
initialMetrics: initialWindowMetrics,
|
|
50
|
+
children: /*#__PURE__*/_jsx(NavigationContainer, {
|
|
51
|
+
ref: navigationRef,
|
|
52
|
+
onReady: onReady,
|
|
53
|
+
theme: navTheme,
|
|
54
|
+
children: /*#__PURE__*/_jsx(AppContent, {})
|
|
55
|
+
})
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
// Wrap with GestureHandlerRootView only if requested
|
|
59
|
+
// (default is false since most apps already have gesture handler imported)
|
|
60
|
+
if (wrapWithGestureHandler) {
|
|
61
|
+
return /*#__PURE__*/_jsx(GestureHandlerRootView, {
|
|
62
|
+
style: {
|
|
63
|
+
flex: 1
|
|
64
|
+
},
|
|
65
|
+
children: NavigationContent
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
return NavigationContent;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=SalespandaApp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","NavigationContainer","DefaultTheme","GestureHandlerRootView","DrawerNavigator","BottomTabNavigator","SafeAreaProvider","initialWindowMetrics","Colors","jsx","_jsx","SalespandaApp","navigationRef","theme","customTheme","standalone","onReady","useDrawer","wrapWithGestureHandler","AppContent","navTheme","colors","background","primary","card","white","text","black","border","NavigationContent","initialMetrics","children","ref","style","flex"],"sourceRoot":"../../src","sources":["SalespandaApp.tsx"],"mappings":";;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,mBAAmB,EAAEC,YAAY,QAAQ,0BAA0B;AAC5E,SAASC,sBAAsB,QAAQ,8BAA8B;AACrE,OAAOC,eAAe,MAAM,iCAA8B;AAC1D,OAAOC,kBAAkB,MAAM,oCAAiC;AAChE,SACEC,gBAAgB,EAChBC,oBAAoB,QACf,gCAAgC;AACvC,SAASC,MAAM,QAAQ,uBAAoB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAwC5C;AACA;AACA;AACA;AACA,eAAe,SAASC,aAAaA,CAAC;EACpCC,aAAa;EACbC,KAAK,EAAEC,WAAW;EAClBC,UAAU,GAAG,KAAK;EAClBC,OAAO;EACPC,SAAS,GAAG,IAAI;EAChBC,sBAAsB,GAAG;AACP,CAAC,GAAG,CAAC,CAAC,EAAE;EAC1B;EACA;EACA,KAAKJ,WAAW;;EAEhB;EACA,MAAMK,UAAU,GAAGA,CAAA,KACjBF,SAAS,gBAAGP,IAAA,CAACN,eAAe,IAAE,CAAC,gBAAGM,IAAA,CAACL,kBAAkB,IAAE,CAAC;;EAE1D;EACA;EACA,IAAIU,UAAU,EAAE;IACd,oBAAOL,IAAA,CAACS,UAAU,IAAE,CAAC;EACvB;;EAEA;EACA,MAAMC,QAAQ,GAAG;IACf,GAAGlB,YAAY;IACfmB,MAAM,EAAE;MACN,GAAGnB,YAAY,CAACmB,MAAM;MACtBC,UAAU,EAAEd,MAAM,CAACc,UAAU;MAC7BC,OAAO,EAAEf,MAAM,CAACe,OAAO;MACvBC,IAAI,EAAEhB,MAAM,CAACiB,KAAK;MAClBC,IAAI,EAAElB,MAAM,CAACmB,KAAK;MAClBC,MAAM,EAAEpB,MAAM,CAACoB;IACjB;EACF,CAAC;EAED,MAAMC,iBAAiB,gBACrBnB,IAAA,CAACJ,gBAAgB;IAACwB,cAAc,EAAEvB,oBAAqB;IAAAwB,QAAA,eACrDrB,IAAA,CAACT,mBAAmB;MAClB+B,GAAG,EAAEpB,aAAc;MACnBI,OAAO,EAAEA,OAAQ;MACjBH,KAAK,EAAEO,QAAS;MAAAW,QAAA,eAEhBrB,IAAA,CAACS,UAAU,IAAE;IAAC,CACK;EAAC,CACN,CACnB;;EAED;EACA;EACA,IAAID,sBAAsB,EAAE;IAC1B,oBACER,IAAA,CAACP,sBAAsB;MAAC8B,KAAK,EAAE;QAAEC,IAAI,EAAE;MAAE,CAAE;MAAAH,QAAA,EACxCF;IAAiB,CACI,CAAC;EAE7B;EAEA,OAAOA,iBAAiB;AAC1B","ignoreList":[]}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const homeIcon = require('./bottomtabs/home.png');
|
|
4
|
+
export const homeIconActive = require('./bottomtabs/homeactive.png');
|
|
5
|
+
export const analyticsIcon = require('./bottomtabs/analytics.png');
|
|
6
|
+
export const analyticsIconActive = require('./bottomtabs/analyticsactive.png');
|
|
7
|
+
export const crmIcon = require('./bottomtabs/crm.png');
|
|
8
|
+
export const crmIconActive = require('./bottomtabs/crmactive.png');
|
|
9
|
+
export const diaryIcon = require('./bottomtabs/diary.png');
|
|
10
|
+
export const diaryIconActive = require('./bottomtabs/diaryactive.png');
|
|
11
|
+
export const notificationIcon = require('./bottomtabs/notification.png');
|
|
12
|
+
export const notificationIconActive = require('./bottomtabs/notificationactive.png');
|
|
13
|
+
export const bottomTabIcons = {
|
|
14
|
+
home: {
|
|
15
|
+
default: homeIcon,
|
|
16
|
+
active: homeIconActive
|
|
17
|
+
},
|
|
18
|
+
analytics: {
|
|
19
|
+
default: analyticsIcon,
|
|
20
|
+
active: analyticsIconActive
|
|
21
|
+
},
|
|
22
|
+
crm: {
|
|
23
|
+
default: crmIcon,
|
|
24
|
+
active: crmIconActive
|
|
25
|
+
},
|
|
26
|
+
diary: {
|
|
27
|
+
default: diaryIcon,
|
|
28
|
+
active: diaryIconActive
|
|
29
|
+
},
|
|
30
|
+
notification: {
|
|
31
|
+
default: notificationIcon,
|
|
32
|
+
active: notificationIconActive
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["homeIcon","require","homeIconActive","analyticsIcon","analyticsIconActive","crmIcon","crmIconActive","diaryIcon","diaryIconActive","notificationIcon","notificationIconActive","bottomTabIcons","home","default","active","analytics","crm","diary","notification"],"sourceRoot":"../../../../src","sources":["assets/images/index.ts"],"mappings":";;AAEA,OAAO,MAAMA,QAA6B,GAAGC,OAAO,CAAC,uBAAuB,CAAC;AAC7E,OAAO,MAAMC,cAAmC,GAAGD,OAAO,CAAC,6BAA6B,CAAC;AACzF,OAAO,MAAME,aAAkC,GAAGF,OAAO,CAAC,4BAA4B,CAAC;AACvF,OAAO,MAAMG,mBAAwC,GAAGH,OAAO,CAAC,kCAAkC,CAAC;AACnG,OAAO,MAAMI,OAA4B,GAAGJ,OAAO,CAAC,sBAAsB,CAAC;AAC3E,OAAO,MAAMK,aAAkC,GAAGL,OAAO,CAAC,4BAA4B,CAAC;AACvF,OAAO,MAAMM,SAA8B,GAAGN,OAAO,CAAC,wBAAwB,CAAC;AAC/E,OAAO,MAAMO,eAAoC,GAAGP,OAAO,CAAC,8BAA8B,CAAC;AAC3F,OAAO,MAAMQ,gBAAqC,GAAGR,OAAO,CAAC,+BAA+B,CAAC;AAC7F,OAAO,MAAMS,sBAA2C,GAAGT,OAAO,CAAC,qCAAqC,CAAC;AAOzG,OAAO,MAAMU,cAAwC,GAAG;EACtDC,IAAI,EAAE;IACJC,OAAO,EAAEb,QAAQ;IACjBc,MAAM,EAAEZ;EACV,CAAC;EACDa,SAAS,EAAE;IACTF,OAAO,EAAEV,aAAa;IACtBW,MAAM,EAAEV;EACV,CAAC;EACDY,GAAG,EAAE;IACHH,OAAO,EAAER,OAAO;IAChBS,MAAM,EAAER;EACV,CAAC;EACDW,KAAK,EAAE;IACLJ,OAAO,EAAEN,SAAS;IAClBO,MAAM,EAAEN;EACV,CAAC;EACDU,YAAY,EAAE;IACZL,OAAO,EAAEJ,gBAAgB;IACzBK,MAAM,EAAEJ;EACV;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Salespanda SDK Configuration
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
let globalConfig = {
|
|
8
|
+
theme: {
|
|
9
|
+
primaryColor: '#4a148c',
|
|
10
|
+
secondaryColor: '#25D366',
|
|
11
|
+
backgroundColor: '#fff',
|
|
12
|
+
textColor: '#333',
|
|
13
|
+
accentColor: '#999'
|
|
14
|
+
},
|
|
15
|
+
features: {
|
|
16
|
+
enablePremium: true,
|
|
17
|
+
enableNotifications: true,
|
|
18
|
+
enableReports: true,
|
|
19
|
+
enableDrawer: true
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Initialize Salespanda SDK with custom configuration
|
|
25
|
+
*/
|
|
26
|
+
export function initializeSalespanda(config) {
|
|
27
|
+
globalConfig = {
|
|
28
|
+
...globalConfig,
|
|
29
|
+
...config,
|
|
30
|
+
theme: {
|
|
31
|
+
...globalConfig.theme,
|
|
32
|
+
...config.theme
|
|
33
|
+
},
|
|
34
|
+
features: {
|
|
35
|
+
...globalConfig.features,
|
|
36
|
+
...config.features
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/**
|
|
42
|
+
* Get current Salespanda configuration
|
|
43
|
+
*/
|
|
44
|
+
export function getSalespandaConfig() {
|
|
45
|
+
return globalConfig;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* Reset configuration to defaults
|
|
50
|
+
*/
|
|
51
|
+
export function resetSalespandaConfig() {
|
|
52
|
+
globalConfig = {
|
|
53
|
+
theme: {
|
|
54
|
+
primaryColor: '#4a148c',
|
|
55
|
+
secondaryColor: '#25D366',
|
|
56
|
+
backgroundColor: '#fff',
|
|
57
|
+
textColor: '#333',
|
|
58
|
+
accentColor: '#999'
|
|
59
|
+
},
|
|
60
|
+
features: {
|
|
61
|
+
enablePremium: true,
|
|
62
|
+
enableNotifications: true,
|
|
63
|
+
enableReports: true,
|
|
64
|
+
enableDrawer: true
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=SalespandaConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["globalConfig","theme","primaryColor","secondaryColor","backgroundColor","textColor","accentColor","features","enablePremium","enableNotifications","enableReports","enableDrawer","initializeSalespanda","config","getSalespandaConfig","resetSalespandaConfig"],"sourceRoot":"../../../src","sources":["config/SalespandaConfig.ts"],"mappings":";;AAAA;AACA;AACA;;AA0CA,IAAIA,YAA8B,GAAG;EACnCC,KAAK,EAAE;IACLC,YAAY,EAAE,SAAS;IACvBC,cAAc,EAAE,SAAS;IACzBC,eAAe,EAAE,MAAM;IACvBC,SAAS,EAAE,MAAM;IACjBC,WAAW,EAAE;EACf,CAAC;EACDC,QAAQ,EAAE;IACRC,aAAa,EAAE,IAAI;IACnBC,mBAAmB,EAAE,IAAI;IACzBC,aAAa,EAAE,IAAI;IACnBC,YAAY,EAAE;EAChB;AACF,CAAC;;AAED;AACA;AACA;AACA,OAAO,SAASC,oBAAoBA,CAACC,MAAwB,EAAQ;EACnEb,YAAY,GAAG;IACb,GAAGA,YAAY;IACf,GAAGa,MAAM;IACTZ,KAAK,EAAE;MACL,GAAGD,YAAY,CAACC,KAAK;MACrB,GAAGY,MAAM,CAACZ;IACZ,CAAC;IACDM,QAAQ,EAAE;MACR,GAAGP,YAAY,CAACO,QAAQ;MACxB,GAAGM,MAAM,CAACN;IACZ;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA,OAAO,SAASO,mBAAmBA,CAAA,EAAqB;EACtD,OAAOd,YAAY;AACrB;;AAEA;AACA;AACA;AACA,OAAO,SAASe,qBAAqBA,CAAA,EAAS;EAC5Cf,YAAY,GAAG;IACbC,KAAK,EAAE;MACLC,YAAY,EAAE,SAAS;MACvBC,cAAc,EAAE,SAAS;MACzBC,eAAe,EAAE,MAAM;MACvBC,SAAS,EAAE,MAAM;MACjBC,WAAW,EAAE;IACf,CAAC;IACDC,QAAQ,EAAE;MACRC,aAAa,EAAE,IAAI;MACnBC,mBAAmB,EAAE,IAAI;MACzBC,aAAa,EAAE,IAAI;MACnBC,YAAY,EAAE;IAChB;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
export const Colors = {
|
|
4
|
+
// Minimal palette as requested
|
|
5
|
+
primary: '#46bdd3',
|
|
6
|
+
white: '#ffffff',
|
|
7
|
+
black: '#322F2F',
|
|
8
|
+
background: '#ffffff',
|
|
9
|
+
border: '#e0e0e0',
|
|
10
|
+
divider: '#e0e0e0',
|
|
11
|
+
white50: 'rgba(255, 255, 255, 0.5)',
|
|
12
|
+
black50: 'rgba(0, 0, 0, 0.2)',
|
|
13
|
+
black30: 'rgba(0, 0, 0, 0.3)',
|
|
14
|
+
black20: 'rgba(0, 0, 0, 0.2)',
|
|
15
|
+
black10: 'rgba(0, 0, 0, 0.1)'
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=Colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Colors","primary","white","black","background","border","divider","white50","black50","black30","black20","black10"],"sourceRoot":"../../../src","sources":["constants/Colors.ts"],"mappings":";;AAAA,OAAO,MAAMA,MAAM,GAAG;EACpB;EACAC,OAAO,EAAE,SAAS;EAClBC,KAAK,EAAE,SAAS;EAChBC,KAAK,EAAE,SAAS;EAChBC,UAAU,EAAE,SAAS;EACrBC,MAAM,EAAE,SAAS;EACjBC,OAAO,EAAE,SAAS;EAClBC,OAAO,EAAE,0BAA0B;EACnCC,OAAO,EAAE,oBAAoB;EAC7BC,OAAO,EAAE,oBAAoB;EAC7BC,OAAO,EAAE,oBAAoB;EAC7BC,OAAO,EAAE;AACX,CAAU","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { Platform } from 'react-native';
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Returns different values based on the platform
|
|
7
|
+
* @param value - Single value to use for both platforms, or object with platform specific values
|
|
8
|
+
* @param androidValue - Optional value for Android (if not provided, uses the same value for both platforms)
|
|
9
|
+
* @returns Platform specific value
|
|
10
|
+
*/
|
|
11
|
+
export const GetPlatform = (value, androidValue) => {
|
|
12
|
+
if (value && typeof value === 'object' && 'ios' in value && 'android' in value) {
|
|
13
|
+
return Platform.select({
|
|
14
|
+
ios: value.ios,
|
|
15
|
+
android: value.android
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
return Platform.select({
|
|
19
|
+
ios: value,
|
|
20
|
+
android: androidValue ?? value
|
|
21
|
+
});
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=GetPlatorm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","GetPlatform","value","androidValue","select","ios","android"],"sourceRoot":"../../../src","sources":["constants/GetPlatorm.ts"],"mappings":";;AAAA,SAASA,QAAQ,QAAQ,cAAc;;AAEvC;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,WAAW,GAAGA,CACzBC,KAAiC,EACjCC,YAAgB,KACV;EACN,IACED,KAAK,IACL,OAAOA,KAAK,KAAK,QAAQ,IACzB,KAAK,IAAIA,KAAK,IACd,SAAS,IAAIA,KAAK,EAClB;IACA,OAAOF,QAAQ,CAACI,MAAM,CAAC;MACrBC,GAAG,EAAEH,KAAK,CAACG,GAAG;MACdC,OAAO,EAAEJ,KAAK,CAACI;IACjB,CAAC,CAAC;EACJ;EAEA,OAAON,QAAQ,CAACI,MAAM,CAAC;IACrBC,GAAG,EAAEH,KAAU;IACfI,OAAO,EAAEH,YAAY,IAAKD;EAC5B,CAAC,CAAC;AACJ,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -1,19 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Salespanda SDK
|
|
5
|
+
*
|
|
6
|
+
* This SDK can be used in two ways:
|
|
7
|
+
*
|
|
8
|
+
* 1. As a complete standalone app:
|
|
9
|
+
* import SalespandaApp from 'react-native-salespanda';
|
|
10
|
+
* <SalespandaApp />
|
|
11
|
+
*
|
|
12
|
+
* 2. As individual components/screens in your app:
|
|
13
|
+
* import { HomeScreen, ProfileScreen } from 'react-native-salespanda';
|
|
14
|
+
*/
|
|
7
15
|
|
|
8
|
-
//
|
|
16
|
+
// ============================================
|
|
17
|
+
// MAIN APP EXPORT (Default)
|
|
18
|
+
// ============================================
|
|
19
|
+
export { default } from "./SalespandaApp.js";
|
|
20
|
+
export { default as SalespandaApp } from "./SalespandaApp.js";
|
|
21
|
+
// ============================================
|
|
22
|
+
// CONFIGURATION
|
|
23
|
+
// ============================================
|
|
24
|
+
export { initializeSalespanda, getSalespandaConfig, resetSalespandaConfig } from "./config/SalespandaConfig.js";
|
|
25
|
+
// ============================================
|
|
26
|
+
// NAVIGATION COMPONENTS
|
|
27
|
+
// ============================================
|
|
9
28
|
export { default as AppNavigator } from "./navigation/AppNavigator.js";
|
|
10
29
|
export { default as DrawerNavigator } from "./navigation/DrawerNavigator.js";
|
|
11
30
|
export { default as BottomTabNavigator } from "./navigation/BottomTabNavigator.js";
|
|
12
31
|
|
|
13
|
-
//
|
|
32
|
+
// ============================================
|
|
33
|
+
// SCREEN COMPONENTS (Library Mode)
|
|
34
|
+
// ============================================
|
|
14
35
|
export { default as HomeScreen } from "./screens/HomeScreen.js";
|
|
15
36
|
export { default as ProfileScreen } from "./screens/ProfileScreen.js";
|
|
16
37
|
export { default as NotificationsScreen } from "./screens/NotificationsScreen.js";
|
|
17
38
|
export { default as ReportsScreen } from "./screens/ReportsScreen.js";
|
|
18
|
-
export { default as PremiumScreen } from "./screens/
|
|
39
|
+
export { default as PremiumScreen } from "./screens/CRMScreen.js";
|
|
19
40
|
//# sourceMappingURL=index.js.map
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["default","SalespandaApp","initializeSalespanda","getSalespandaConfig","resetSalespandaConfig","AppNavigator","DrawerNavigator","BottomTabNavigator","HomeScreen","ProfileScreen","NotificationsScreen","ReportsScreen","PremiumScreen"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAASA,OAAO,QAAQ,oBAAiB;AACzC,SAASA,OAAO,IAAIC,aAAa,QAAQ,oBAAiB;AAG1D;AACA;AACA;AACA,SACEC,oBAAoB,EACpBC,mBAAmB,EACnBC,qBAAqB,QAChB,8BAA2B;AAGlC;AACA;AACA;AACA,SAASJ,OAAO,IAAIK,YAAY,QAAQ,8BAA2B;AACnE,SAASL,OAAO,IAAIM,eAAe,QAAQ,iCAA8B;AACzE,SAASN,OAAO,IAAIO,kBAAkB,QAAQ,oCAAiC;;AAE/E;AACA;AACA;AACA,SAASP,OAAO,IAAIQ,UAAU,QAAQ,yBAAsB;AAC5D,SAASR,OAAO,IAAIS,aAAa,QAAQ,4BAAyB;AAClE,SAAST,OAAO,IAAIU,mBAAmB,QAAQ,kCAA+B;AAC9E,SAASV,OAAO,IAAIW,aAAa,QAAQ,4BAAyB;AAClE,SAASX,OAAO,IAAIY,aAAa,QAAQ,wBAAqB","ignoreList":[]}
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { NavigationContainer } from '@react-navigation/native';
|
|
4
|
-
import
|
|
4
|
+
import BottomTabNavigator from "./BottomTabNavigator.js";
|
|
5
|
+
import { SafeAreaView } from 'react-native-safe-area-context';
|
|
6
|
+
import { Colors } from "../constants/Colors.js";
|
|
5
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
8
|
export default function AppNavigator() {
|
|
7
9
|
return /*#__PURE__*/_jsx(NavigationContainer, {
|
|
8
|
-
children: /*#__PURE__*/_jsx(
|
|
10
|
+
children: /*#__PURE__*/_jsx(SafeAreaView, {
|
|
11
|
+
style: {
|
|
12
|
+
flex: 1,
|
|
13
|
+
backgroundColor: Colors.background
|
|
14
|
+
},
|
|
15
|
+
edges: ['bottom', 'top'],
|
|
16
|
+
children: /*#__PURE__*/_jsx(BottomTabNavigator, {})
|
|
17
|
+
})
|
|
9
18
|
});
|
|
10
19
|
}
|
|
11
20
|
//# sourceMappingURL=AppNavigator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NavigationContainer","
|
|
1
|
+
{"version":3,"names":["NavigationContainer","BottomTabNavigator","SafeAreaView","Colors","jsx","_jsx","AppNavigator","children","style","flex","backgroundColor","background","edges"],"sourceRoot":"../../../src","sources":["navigation/AppNavigator.tsx"],"mappings":";;AAAA,SAASA,mBAAmB,QAAQ,0BAA0B;AAC9D,OAAOC,kBAAkB,MAAM,yBAAsB;AACrD,SAASC,YAAY,QAAQ,gCAAgC;AAC7D,SAASC,MAAM,QAAQ,wBAAqB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAE7C,eAAe,SAASC,YAAYA,CAAA,EAAG;EACrC,oBACED,IAAA,CAACL,mBAAmB;IAAAO,QAAA,eAClBF,IAAA,CAACH,YAAY;MACXM,KAAK,EAAE;QAAEC,IAAI,EAAE,CAAC;QAAEC,eAAe,EAAEP,MAAM,CAACQ;MAAW,CAAE;MACvDC,KAAK,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAE;MAAAL,QAAA,eAEzBF,IAAA,CAACJ,kBAAkB,IAAE;IAAC,CACV;EAAC,CACI,CAAC;AAE1B","ignoreList":[]}
|
|
@@ -1,88 +1,115 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { createBottomTabNavigator } from '@react-navigation/bottom-tabs';
|
|
4
|
-
import {
|
|
4
|
+
import { Image, View } from 'react-native';
|
|
5
5
|
import HomeScreen from "../screens/HomeScreen.js";
|
|
6
|
-
import PremiumScreen from "../screens/PremiumScreen.js";
|
|
7
6
|
import NotificationsScreen from "../screens/NotificationsScreen.js";
|
|
8
7
|
import ReportsScreen from "../screens/ReportsScreen.js";
|
|
8
|
+
import ProfileScreen from "../screens/ProfileScreen.js";
|
|
9
|
+
import { SafeAreaView } from 'react-native-safe-area-context';
|
|
10
|
+
import { Colors } from "../constants/Colors.js";
|
|
11
|
+
import { analyticsIcon, analyticsIconActive, crmIcon, crmIconActive, diaryIcon, diaryIconActive, homeIcon, homeIconActive, notificationIcon, notificationIconActive } from "../assets/images/index.js";
|
|
12
|
+
import CRMScreen from "../screens/CRMScreen.js";
|
|
9
13
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
10
14
|
const Tab = createBottomTabNavigator();
|
|
11
15
|
export default function BottomTabNavigator() {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
style: {
|
|
34
|
-
fontSize: size,
|
|
35
|
-
color
|
|
36
|
-
},
|
|
37
|
-
children: "\uD83C\uDFE0"
|
|
38
|
-
})
|
|
39
|
-
}
|
|
40
|
-
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
41
|
-
name: "Premium",
|
|
42
|
-
component: PremiumScreen,
|
|
43
|
-
options: {
|
|
44
|
-
tabBarIcon: ({
|
|
45
|
-
color,
|
|
46
|
-
size
|
|
47
|
-
}) => /*#__PURE__*/_jsx(Text, {
|
|
48
|
-
style: {
|
|
49
|
-
fontSize: size,
|
|
50
|
-
color
|
|
51
|
-
},
|
|
52
|
-
children: "\uD83D\uDC8E"
|
|
53
|
-
})
|
|
54
|
-
}
|
|
55
|
-
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
56
|
-
name: "Notifications",
|
|
57
|
-
component: NotificationsScreen,
|
|
58
|
-
options: {
|
|
59
|
-
tabBarIcon: ({
|
|
60
|
-
color,
|
|
61
|
-
size
|
|
62
|
-
}) => /*#__PURE__*/_jsx(Text, {
|
|
63
|
-
style: {
|
|
64
|
-
fontSize: size,
|
|
65
|
-
color
|
|
66
|
-
},
|
|
67
|
-
children: "\uD83D\uDD14"
|
|
68
|
-
})
|
|
69
|
-
}
|
|
70
|
-
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
71
|
-
name: "Reports",
|
|
72
|
-
component: ReportsScreen,
|
|
73
|
-
options: {
|
|
74
|
-
tabBarIcon: ({
|
|
75
|
-
color,
|
|
76
|
-
size
|
|
77
|
-
}) => /*#__PURE__*/_jsx(Text, {
|
|
16
|
+
const renderImageIcon = (inactive, active) => ({
|
|
17
|
+
focused,
|
|
18
|
+
size
|
|
19
|
+
}) => {
|
|
20
|
+
if (focused) {
|
|
21
|
+
return /*#__PURE__*/_jsx(View, {
|
|
22
|
+
style: {
|
|
23
|
+
width: 48,
|
|
24
|
+
height: 48,
|
|
25
|
+
borderRadius: 24,
|
|
26
|
+
alignItems: 'center',
|
|
27
|
+
justifyContent: 'center',
|
|
28
|
+
borderWidth: 4,
|
|
29
|
+
borderColor: Colors.white,
|
|
30
|
+
transform: [{
|
|
31
|
+
translateY: -6
|
|
32
|
+
}]
|
|
33
|
+
},
|
|
34
|
+
children: /*#__PURE__*/_jsx(Image, {
|
|
35
|
+
source: active,
|
|
36
|
+
resizeMode: "contain",
|
|
78
37
|
style: {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
38
|
+
width: 42,
|
|
39
|
+
height: 42,
|
|
40
|
+
tintColor: Colors.primary
|
|
41
|
+
}
|
|
83
42
|
})
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
return /*#__PURE__*/_jsx(Image, {
|
|
46
|
+
source: inactive,
|
|
47
|
+
resizeMode: "contain",
|
|
48
|
+
style: {
|
|
49
|
+
width: size,
|
|
50
|
+
height: size,
|
|
51
|
+
tintColor: Colors.black30
|
|
84
52
|
}
|
|
85
|
-
})
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
return /*#__PURE__*/_jsx(SafeAreaView, {
|
|
56
|
+
style: {
|
|
57
|
+
flex: 1,
|
|
58
|
+
backgroundColor: Colors.background
|
|
59
|
+
},
|
|
60
|
+
edges: ['bottom'],
|
|
61
|
+
children: /*#__PURE__*/_jsxs(Tab.Navigator, {
|
|
62
|
+
screenOptions: {
|
|
63
|
+
headerShown: false,
|
|
64
|
+
sceneStyle: {
|
|
65
|
+
backgroundColor: Colors.background
|
|
66
|
+
},
|
|
67
|
+
tabBarShowLabel: false,
|
|
68
|
+
tabBarStyle: {
|
|
69
|
+
borderTopWidth: 1,
|
|
70
|
+
borderTopColor: Colors.border,
|
|
71
|
+
backgroundColor: Colors.white,
|
|
72
|
+
paddingBottom: 10,
|
|
73
|
+
paddingTop: 8,
|
|
74
|
+
height: 64
|
|
75
|
+
},
|
|
76
|
+
tabBarItemStyle: {
|
|
77
|
+
overflow: 'visible'
|
|
78
|
+
}
|
|
79
|
+
},
|
|
80
|
+
children: [/*#__PURE__*/_jsx(Tab.Screen, {
|
|
81
|
+
name: "Home",
|
|
82
|
+
component: HomeScreen,
|
|
83
|
+
options: {
|
|
84
|
+
tabBarIcon: renderImageIcon(homeIcon, homeIconActive),
|
|
85
|
+
headerShown: false
|
|
86
|
+
}
|
|
87
|
+
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
88
|
+
name: "CRM",
|
|
89
|
+
component: CRMScreen,
|
|
90
|
+
options: {
|
|
91
|
+
tabBarIcon: renderImageIcon(crmIcon, crmIconActive)
|
|
92
|
+
}
|
|
93
|
+
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
94
|
+
name: "Reports",
|
|
95
|
+
component: ReportsScreen,
|
|
96
|
+
options: {
|
|
97
|
+
tabBarIcon: renderImageIcon(diaryIcon, diaryIconActive)
|
|
98
|
+
}
|
|
99
|
+
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
100
|
+
name: "Notifications",
|
|
101
|
+
component: NotificationsScreen,
|
|
102
|
+
options: {
|
|
103
|
+
tabBarIcon: renderImageIcon(notificationIcon, notificationIconActive)
|
|
104
|
+
}
|
|
105
|
+
}), /*#__PURE__*/_jsx(Tab.Screen, {
|
|
106
|
+
name: "Profile",
|
|
107
|
+
component: ProfileScreen,
|
|
108
|
+
options: {
|
|
109
|
+
tabBarIcon: renderImageIcon(analyticsIcon, analyticsIconActive)
|
|
110
|
+
}
|
|
111
|
+
})]
|
|
112
|
+
})
|
|
86
113
|
});
|
|
87
114
|
}
|
|
88
115
|
//# sourceMappingURL=BottomTabNavigator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createBottomTabNavigator","
|
|
1
|
+
{"version":3,"names":["createBottomTabNavigator","Image","View","HomeScreen","NotificationsScreen","ReportsScreen","ProfileScreen","SafeAreaView","Colors","analyticsIcon","analyticsIconActive","crmIcon","crmIconActive","diaryIcon","diaryIconActive","homeIcon","homeIconActive","notificationIcon","notificationIconActive","CRMScreen","jsx","_jsx","jsxs","_jsxs","Tab","BottomTabNavigator","renderImageIcon","inactive","active","focused","size","style","width","height","borderRadius","alignItems","justifyContent","borderWidth","borderColor","white","transform","translateY","children","source","resizeMode","tintColor","primary","black30","flex","backgroundColor","background","edges","Navigator","screenOptions","headerShown","sceneStyle","tabBarShowLabel","tabBarStyle","borderTopWidth","borderTopColor","border","paddingBottom","paddingTop","tabBarItemStyle","overflow","Screen","name","component","options","tabBarIcon"],"sourceRoot":"../../../src","sources":["navigation/BottomTabNavigator.tsx"],"mappings":"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","ignoreList":[]}
|