react-native-mobile-chat 0.1.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.
Files changed (96) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +235 -0
  3. package/android/build.gradle +77 -0
  4. package/android/gradle.properties +5 -0
  5. package/android/src/main/AndroidManifest.xml +4 -0
  6. package/android/src/main/java/com/appchat/AppChatModule.java +58 -0
  7. package/android/src/main/java/com/appchat/AppChatPackage.java +28 -0
  8. package/ios/AppChat.h +12 -0
  9. package/ios/AppChat.mm +67 -0
  10. package/ios/AppChat.xcodeproj/project.pbxproj +274 -0
  11. package/ios/AppChat.xcodeproj/project.xcworkspace/contents.xcworkspacedata +4 -0
  12. package/lib/commonjs/assets/images/arrow_left.png +0 -0
  13. package/lib/commonjs/assets/images/arrow_left_black.png +0 -0
  14. package/lib/commonjs/common/constants/index.js +20 -0
  15. package/lib/commonjs/common/constants/index.js.map +1 -0
  16. package/lib/commonjs/common/utils/index.js +53 -0
  17. package/lib/commonjs/common/utils/index.js.map +1 -0
  18. package/lib/commonjs/data/local/index.js +28 -0
  19. package/lib/commonjs/data/local/index.js.map +1 -0
  20. package/lib/commonjs/data/remote/index.js +87 -0
  21. package/lib/commonjs/data/remote/index.js.map +1 -0
  22. package/lib/commonjs/data/static/index.js +35 -0
  23. package/lib/commonjs/data/static/index.js.map +1 -0
  24. package/lib/commonjs/index.js +46 -0
  25. package/lib/commonjs/index.js.map +1 -0
  26. package/lib/commonjs/native/component/WebView.js +16 -0
  27. package/lib/commonjs/native/component/WebView.js.map +1 -0
  28. package/lib/commonjs/native/module/index.js +18 -0
  29. package/lib/commonjs/native/module/index.js.map +1 -0
  30. package/lib/commonjs/presentation/component/AppChatComponent.js +236 -0
  31. package/lib/commonjs/presentation/component/AppChatComponent.js.map +1 -0
  32. package/lib/commonjs/presentation/initialization/index.js +148 -0
  33. package/lib/commonjs/presentation/initialization/index.js.map +1 -0
  34. package/lib/commonjs/presentation/notification/index.js +50 -0
  35. package/lib/commonjs/presentation/notification/index.js.map +1 -0
  36. package/lib/module/assets/images/arrow_left.png +0 -0
  37. package/lib/module/assets/images/arrow_left_black.png +0 -0
  38. package/lib/module/common/constants/index.js +13 -0
  39. package/lib/module/common/constants/index.js.map +1 -0
  40. package/lib/module/common/utils/index.js +45 -0
  41. package/lib/module/common/utils/index.js.map +1 -0
  42. package/lib/module/data/local/index.js +20 -0
  43. package/lib/module/data/local/index.js.map +1 -0
  44. package/lib/module/data/remote/index.js +75 -0
  45. package/lib/module/data/remote/index.js.map +1 -0
  46. package/lib/module/data/static/index.js +28 -0
  47. package/lib/module/data/static/index.js.map +1 -0
  48. package/lib/module/index.js +5 -0
  49. package/lib/module/index.js.map +1 -0
  50. package/lib/module/native/component/WebView.js +10 -0
  51. package/lib/module/native/component/WebView.js.map +1 -0
  52. package/lib/module/native/module/index.js +11 -0
  53. package/lib/module/native/module/index.js.map +1 -0
  54. package/lib/module/presentation/component/AppChatComponent.js +227 -0
  55. package/lib/module/presentation/component/AppChatComponent.js.map +1 -0
  56. package/lib/module/presentation/initialization/index.js +141 -0
  57. package/lib/module/presentation/initialization/index.js.map +1 -0
  58. package/lib/module/presentation/notification/index.js +41 -0
  59. package/lib/module/presentation/notification/index.js.map +1 -0
  60. package/lib/typescript/common/constants/index.d.ts +13 -0
  61. package/lib/typescript/common/constants/index.d.ts.map +1 -0
  62. package/lib/typescript/common/utils/index.d.ts +15 -0
  63. package/lib/typescript/common/utils/index.d.ts.map +1 -0
  64. package/lib/typescript/data/local/index.d.ts +4 -0
  65. package/lib/typescript/data/local/index.d.ts.map +1 -0
  66. package/lib/typescript/data/remote/index.d.ts +7 -0
  67. package/lib/typescript/data/remote/index.d.ts.map +1 -0
  68. package/lib/typescript/data/static/index.d.ts +23 -0
  69. package/lib/typescript/data/static/index.d.ts.map +1 -0
  70. package/lib/typescript/index.d.ts +5 -0
  71. package/lib/typescript/index.d.ts.map +1 -0
  72. package/lib/typescript/native/component/WebView.d.ts +8 -0
  73. package/lib/typescript/native/component/WebView.d.ts.map +1 -0
  74. package/lib/typescript/native/module/index.d.ts +2 -0
  75. package/lib/typescript/native/module/index.d.ts.map +1 -0
  76. package/lib/typescript/presentation/component/AppChatComponent.d.ts +22 -0
  77. package/lib/typescript/presentation/component/AppChatComponent.d.ts.map +1 -0
  78. package/lib/typescript/presentation/initialization/index.d.ts +2 -0
  79. package/lib/typescript/presentation/initialization/index.d.ts.map +1 -0
  80. package/lib/typescript/presentation/notification/index.d.ts +5 -0
  81. package/lib/typescript/presentation/notification/index.d.ts.map +1 -0
  82. package/package.json +165 -0
  83. package/react-native-app-chat.podspec +35 -0
  84. package/src/assets/images/arrow_left.png +0 -0
  85. package/src/assets/images/arrow_left_black.png +0 -0
  86. package/src/common/constants/index.tsx +12 -0
  87. package/src/common/utils/index.tsx +58 -0
  88. package/src/data/local/index.tsx +23 -0
  89. package/src/data/remote/index.tsx +80 -0
  90. package/src/data/static/index.tsx +28 -0
  91. package/src/index.tsx +11 -0
  92. package/src/native/component/WebView.tsx +10 -0
  93. package/src/native/module/index.tsx +18 -0
  94. package/src/presentation/component/AppChatComponent.tsx +154 -0
  95. package/src/presentation/initialization/index.tsx +149 -0
  96. package/src/presentation/notification/index.tsx +45 -0
@@ -0,0 +1,75 @@
1
+ import { Platform } from "react-native";
2
+ import { AppChatStatic } from "../static";
3
+ import Constant from "../../common/constants";
4
+ export async function authenticate(clientId, clienSecret) {
5
+ const formData = new FormData();
6
+ formData.append('grant_type', 'client_credentials');
7
+ formData.append('client_id', clientId);
8
+ formData.append('client_secret', clienSecret);
9
+ return await fetch(`${Constant.BASE_URL}/oauth/token`, {
10
+ method: 'POST',
11
+ body: formData
12
+ });
13
+ }
14
+ export async function createContact(externalId, fullName) {
15
+ let formData = new FormData();
16
+ formData.append('external_id', externalId);
17
+ formData.append('full_name', fullName);
18
+ return await fetch(`${Constant.BASE_URL}/api/core/v1/app_chat/${AppChatStatic.appId}/contacts`, {
19
+ headers: {
20
+ Authorization: AppChatStatic.accessToken
21
+ },
22
+ method: 'POST',
23
+ body: formData
24
+ });
25
+ }
26
+ export async function registerFcmToken(fcmToken) {
27
+ let formData = new FormData();
28
+ formData.append('app_id', AppChatStatic.appId);
29
+ formData.append('contact_id', AppChatStatic.contactId);
30
+ formData.append('resource_type', Platform.OS);
31
+ formData.append('token', fcmToken);
32
+ return await fetch(`${Constant.BASE_URL}/api/core/v1/app_chat/${AppChatStatic.appId}/notification_credentials`, {
33
+ headers: {
34
+ Authorization: AppChatStatic.accessToken
35
+ },
36
+ method: 'PUT',
37
+ body: formData
38
+ });
39
+ }
40
+ export async function revokeFcmToken(fcmToken) {
41
+ let formData = new FormData();
42
+ formData.append('app_id', AppChatStatic.appId);
43
+ formData.append('contact_id', AppChatStatic.contactId);
44
+ formData.append('resource_type', 'current');
45
+ formData.append('token', fcmToken);
46
+ return await fetch(`${Constant.BASE_URL}/api/core/v1/app_chat/${AppChatStatic.appId}/notification_credentials`, {
47
+ headers: {
48
+ Authorization: AppChatStatic.accessToken
49
+ },
50
+ method: 'DELETE',
51
+ body: formData
52
+ });
53
+ }
54
+ export async function validateBundleId(bundleId) {
55
+ let formData = new FormData();
56
+ formData.append('app_id', AppChatStatic.appId);
57
+ formData.append('bundle_id', bundleId);
58
+ formData.append('platform', Platform.OS);
59
+ return await fetch(`${Constant.BASE_URL}/api/core/v1/app_chat/${AppChatStatic.appId}/validate_bundle_id`, {
60
+ headers: {
61
+ Authorization: AppChatStatic.accessToken
62
+ },
63
+ method: 'POST',
64
+ body: formData
65
+ });
66
+ }
67
+ export async function getWidgetSetting() {
68
+ return await fetch(`${Constant.BASE_URL}/api/core/v1/app_chat/${AppChatStatic.appId}/widget_setting`, {
69
+ headers: {
70
+ Authorization: AppChatStatic.accessToken
71
+ },
72
+ method: 'GET'
73
+ });
74
+ }
75
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","AppChatStatic","Constant","authenticate","clientId","clienSecret","formData","FormData","append","fetch","BASE_URL","method","body","createContact","externalId","fullName","appId","headers","Authorization","accessToken","registerFcmToken","fcmToken","contactId","OS","revokeFcmToken","validateBundleId","bundleId","getWidgetSetting"],"sourceRoot":"../../../../src","sources":["data/remote/index.tsx"],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ export class AppChatStatic {
2
+ //Based on event
3
+ static appChatOpened = false;
4
+
5
+ //Get from init process
6
+ static accessToken = '';
7
+ static contactId = '';
8
+ static bundleIdValidation = '';
9
+ static encryptedUrlParams = '';
10
+ static initAppChatResult = '';
11
+ static appChatTheme = {
12
+ bgColorTheme: 'grey',
13
+ bgColorThemeOverlaid: 'grey',
14
+ fontColor: 'white',
15
+ textHeader: '',
16
+ textDescription: '',
17
+ isAnyEmpty: () => this.appChatTheme.bgColorTheme == 'grey' || this.appChatTheme.bgColorThemeOverlaid == 'grey' || this.appChatTheme.bgColorTheme == 'white' || this.appChatTheme.textHeader == '' || this.appChatTheme.textDescription == ''
18
+ };
19
+
20
+ //Assigned as parameter by developer
21
+ static appId = '';
22
+ static clientId = '';
23
+ static clientSecret = '';
24
+ static externalId = '';
25
+ static fullName = '';
26
+ static fcmToken = '';
27
+ }
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AppChatStatic","appChatOpened","accessToken","contactId","bundleIdValidation","encryptedUrlParams","initAppChatResult","appChatTheme","bgColorTheme","bgColorThemeOverlaid","fontColor","textHeader","textDescription","isAnyEmpty","appId","clientId","clientSecret","externalId","fullName","fcmToken"],"sourceRoot":"../../../../src","sources":["data/static/index.tsx"],"mappings":"AAAA,OAAO,MAAMA,aAAa,CAAC;EACzB;EACA,OAAOC,aAAa,GAAG,KAAK;;EAE5B;EACA,OAAOC,WAAW,GAAG,EAAE;EACvB,OAAOC,SAAS,GAAG,EAAE;EACrB,OAAOC,kBAAkB,GAAG,EAAE;EAC9B,OAAOC,kBAAkB,GAAG,EAAE;EAC9B,OAAOC,iBAAiB,GAAG,EAAE;EAE7B,OAAOC,YAAY,GAAG;IACpBC,YAAY,EAAE,MAAM;IACpBC,oBAAoB,EAAE,MAAM;IAC5BC,SAAS,EAAE,OAAO;IAClBC,UAAU,EAAE,EAAE;IACdC,eAAe,EAAE,EAAE;IACnBC,UAAU,EAAEA,CAAA,KAAM,IAAI,CAACN,YAAY,CAACC,YAAY,IAAI,MAAM,IAAI,IAAI,CAACD,YAAY,CAACE,oBAAoB,IAAI,MAAM,IAAI,IAAI,CAACF,YAAY,CAACC,YAAY,IAAI,OAAO,IAAI,IAAI,CAACD,YAAY,CAACI,UAAU,IAAI,EAAE,IAAI,IAAI,CAACJ,YAAY,CAACK,eAAe,IAAI;EAC5O,CAAC;;EAED;EACA,OAAOE,KAAK,GAAG,EAAE;EACjB,OAAOC,QAAQ,GAAG,EAAE;EACpB,OAAOC,YAAY,GAAG,EAAE;EACxB,OAAOC,UAAU,GAAG,EAAE;EACtB,OAAOC,QAAQ,GAAG,EAAE;EACpB,OAAOC,QAAQ,GAAG,EAAE;AACtB"}
@@ -0,0 +1,5 @@
1
+ import AppChatComponent from "./presentation/component/AppChatComponent";
2
+ import { initAppChat } from "./presentation/initialization";
3
+ import { isAppChatOpened, isAppChatPayload, registerNotification, revokeNotification } from "./presentation/notification";
4
+ export { initAppChat as initMobileChat, isAppChatOpened as isMobileChatOpened, isAppChatPayload as isMobileChatPayload, AppChatComponent as MobileChatComponent, registerNotification as registerMobileChatNotification, revokeNotification as revokeMobileChatNotification };
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AppChatComponent","initAppChat","isAppChatOpened","isAppChatPayload","registerNotification","revokeNotification","initMobileChat","isMobileChatOpened","isMobileChatPayload","MobileChatComponent","registerMobileChatNotification","revokeMobileChatNotification"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,OAAOA,gBAAgB,MAAM,2CAA2C;AACxE,SAASC,WAAW,QAAQ,+BAA+B;AAC3D,SAASC,eAAe,EAAEC,gBAAgB,EAAEC,oBAAoB,EAAEC,kBAAkB,QAAQ,6BAA6B;AACzH,SACEJ,WAAW,IAAIK,cAAc,EAC7BJ,eAAe,IAAIK,kBAAkB,EACrCJ,gBAAgB,IAAIK,mBAAmB,EACvCR,gBAAgB,IAAIS,mBAAmB,EACvCL,oBAAoB,IAAIM,8BAA8B,EACtDL,kBAAkB,IAAIM,4BAA4B"}
@@ -0,0 +1,10 @@
1
+ import { requireNativeComponent } from 'react-native';
2
+
3
+ /**
4
+ * Composes `WebView`.
5
+ *
6
+ * - url: string
7
+ */
8
+ const WebView = requireNativeComponent('RCTAppChatWebView');
9
+ export default WebView;
10
+ //# sourceMappingURL=WebView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["requireNativeComponent","WebView"],"sourceRoot":"../../../../src","sources":["native/component/WebView.tsx"],"mappings":"AAAA,SAASA,sBAAsB,QAAQ,cAAc;;AAErD;AACA;AACA;AACA;AACA;AACA,MAAMC,OAAO,GAAGD,sBAAsB,CAAC,mBAAmB,CAAC;AAE3D,eAAeC,OAAO"}
@@ -0,0 +1,11 @@
1
+ import { NativeModules, Platform } from 'react-native';
2
+ const LINKING_ERROR = `The package 'react-native-mobile-chat' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
3
+ ios: "- You have run 'pod install'\n",
4
+ default: ''
5
+ }) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo Go\n';
6
+ export const AppChatNative = NativeModules.AppChat ? NativeModules.AppChat : new Proxy({}, {
7
+ get() {
8
+ throw new Error(LINKING_ERROR);
9
+ }
10
+ });
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NativeModules","Platform","LINKING_ERROR","select","ios","default","AppChatNative","AppChat","Proxy","get","Error"],"sourceRoot":"../../../../src","sources":["native/module/index.tsx"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEtD,MAAMC,aAAa,GAChB,mFAAkF,GACnFD,QAAQ,CAACE,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAEjC,OAAO,MAAMC,aAAa,GAAGN,aAAa,CAACO,OAAO,GAC9CP,aAAa,CAACO,OAAO,GACrB,IAAIC,KAAK,CACT,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACR,aAAa,CAAC;EAChC;AACF,CACF,CAAC"}
@@ -0,0 +1,227 @@
1
+ import React, { PureComponent, Fragment } from 'react';
2
+ import { ActivityIndicator, StatusBar, View, Dimensions, Text, TouchableOpacity, Image, PermissionsAndroid, Platform } from 'react-native';
3
+ import { AppChatStatic } from '../../data/static';
4
+ import { initAppChat } from '../../presentation/initialization';
5
+ import WebView from 'react-native-webview';
6
+ import Constant from '../../common/constants';
7
+ import { putString } from '../../data/local';
8
+ import { SafeAreaView } from 'react-native';
9
+ export default class AppChatComponent extends PureComponent {
10
+ _isMounted = false;
11
+ state = {
12
+ isOverlaid: false,
13
+ toggleRefresh: false
14
+ };
15
+ constructor(props) {
16
+ super(props);
17
+ this.state = {
18
+ isOverlaid: false,
19
+ toggleRefresh: false
20
+ };
21
+ }
22
+ _setState = state => {
23
+ if (this._isMounted) {
24
+ this.setState(state);
25
+ }
26
+ };
27
+ _requestPermission = async permission => {
28
+ if (Platform.OS == 'android') {
29
+ const granted = await PermissionsAndroid.check(permission);
30
+ if (!granted) {
31
+ PermissionsAndroid.request(permission);
32
+ }
33
+ }
34
+ };
35
+ _onAccessTokenExpired = async () => {
36
+ AppChatStatic.initAppChatResult = '';
37
+ AppChatStatic.accessToken = '';
38
+ AppChatStatic.encryptedUrlParams = '';
39
+ await putString('accessToken', 'default_value');
40
+ this._setState({
41
+ toggleRefresh: !this.state.toggleRefresh
42
+ });
43
+ this.componentDidMount();
44
+ };
45
+ _onMessage = event => {
46
+ const data = JSON.parse(event.nativeEvent.data);
47
+ switch (data.key) {
48
+ case 'TOKEN_EXPIRED':
49
+ this._onAccessTokenExpired();
50
+ break;
51
+ case 'OVERLAY':
52
+ this._setState({
53
+ isOverlaid: true
54
+ });
55
+ this._requestPermission('android.permission.CAMERA');
56
+ break;
57
+ case 'REMOVE_OVERLAY':
58
+ this._setState({
59
+ isOverlaid: false
60
+ });
61
+ break;
62
+ case 'CAMERA':
63
+ //this._requestPermission('android.permission.RECORD_AUDIO')
64
+ break;
65
+ case 'GALLERY':
66
+ //this._requestPermission('android.permission.READ_MEDIA_IMAGES')
67
+ //this._requestPermission('android.permission.READ_MEDIA_VIDEO')
68
+ break;
69
+ case 'DOCUMENT':
70
+ //this._requestPermission('android.permission.READ_EXTERNAL_STORAGE')
71
+ break;
72
+ case 'AUDIO':
73
+ //this._requestPermission('android.permission.READ_MEDIA_AUDIO')
74
+ break;
75
+ default:
76
+ break;
77
+ }
78
+ console.log('onMessage', event.nativeEvent.data);
79
+ };
80
+ componentDidMount() {
81
+ this._isMounted = true;
82
+ AppChatStatic.appChatOpened = true;
83
+ if (AppChatStatic.initAppChatResult === '') {
84
+ setTimeout(() => {
85
+ const {
86
+ appId,
87
+ clientId,
88
+ clientSecret,
89
+ externalId,
90
+ fullName
91
+ } = AppChatStatic;
92
+ initAppChat(appId, clientId, clientSecret, externalId, fullName).then(result => {
93
+ if (result === 'SUCCESS') this._setState({
94
+ toggleRefresh: !this.state.toggleRefresh
95
+ });
96
+ });
97
+ }, 10000);
98
+ }
99
+ }
100
+ componentWillUnmount() {
101
+ this._isMounted = false;
102
+ AppChatStatic.appChatOpened = false;
103
+ }
104
+ render() {
105
+ const {
106
+ onBackButtonTapped
107
+ } = this.props;
108
+ const {
109
+ initAppChatResult,
110
+ bundleIdValidation
111
+ } = AppChatStatic;
112
+ const {
113
+ bgColorTheme,
114
+ textHeader,
115
+ textDescription,
116
+ fontColor
117
+ } = AppChatStatic.appChatTheme;
118
+ const postMessageListener = `window.addEventListener('message',(event) => window.ReactNativeWebView.postMessage(event.data));let meta = document.createElement('meta'); meta.setAttribute('name', 'viewport'); meta.setAttribute('content', 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0'); document.getElementsByTagName('head')[0].appendChild(meta);`;
119
+ if (initAppChatResult === 'SUCCESS' && bundleIdValidation !== 'success') {
120
+ return /*#__PURE__*/React.createElement(View, {
121
+ style: {
122
+ flex: 1,
123
+ justifyContent: 'center',
124
+ alignItems: 'center'
125
+ }
126
+ }, /*#__PURE__*/React.createElement(Text, {
127
+ style: {
128
+ textAlign: 'center',
129
+ padding: 16
130
+ }
131
+ }, Constant.BUNDLE_ID_INVALID, " "));
132
+ }
133
+ return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(SafeAreaView, {
134
+ style: {
135
+ flex: 0,
136
+ backgroundColor: this.state.isOverlaid ? AppChatStatic.appChatTheme.bgColorThemeOverlaid : bgColorTheme
137
+ }
138
+ }), /*#__PURE__*/React.createElement(SafeAreaView, {
139
+ style: {
140
+ flex: 1,
141
+ backgroundColor: this.state.isOverlaid ? Constant.WEBVIEW_BACKGROUND_COLOR_OVERLAID : Constant.WEBVIEW_BACKGROUND_COLOR
142
+ }
143
+ }, /*#__PURE__*/React.createElement(StatusBar, {
144
+ barStyle: fontColor === 'black' || this.state.isOverlaid ? 'dark-content' : 'light-content',
145
+ backgroundColor: this.state.isOverlaid ? AppChatStatic.appChatTheme.bgColorThemeOverlaid : bgColorTheme
146
+ }), /*#__PURE__*/React.createElement(View, {
147
+ style: {
148
+ height: 52,
149
+ backgroundColor: bgColorTheme
150
+ }
151
+ }, /*#__PURE__*/React.createElement(View, {
152
+ style: {
153
+ position: 'absolute'
154
+ }
155
+ }, /*#__PURE__*/React.createElement(View, {
156
+ style: {
157
+ position: 'absolute',
158
+ top: 0,
159
+ flexDirection: 'row',
160
+ height: 52,
161
+ width: Dimensions.get('screen').width,
162
+ backgroundColor: bgColorTheme
163
+ }
164
+ }, /*#__PURE__*/React.createElement(TouchableOpacity, {
165
+ style: {
166
+ width: 52,
167
+ height: 52,
168
+ justifyContent: 'center',
169
+ alignItems: 'center'
170
+ },
171
+ onPress: () => onBackButtonTapped()
172
+ }, /*#__PURE__*/React.createElement(Image, {
173
+ style: {
174
+ height: 16
175
+ },
176
+ source: fontColor === 'black' ? require('../../assets/images/arrow_left_black.png') : require('../../assets/images/arrow_left.png')
177
+ })), /*#__PURE__*/React.createElement(View, {
178
+ style: {
179
+ height: 52,
180
+ justifyContent: 'center',
181
+ alignItems: 'flex-start'
182
+ }
183
+ }, /*#__PURE__*/React.createElement(Text, {
184
+ style: {
185
+ fontSize: 16,
186
+ color: fontColor,
187
+ fontWeight: '600'
188
+ }
189
+ }, textHeader), /*#__PURE__*/React.createElement(Text, {
190
+ style: {
191
+ fontSize: 12,
192
+ color: fontColor,
193
+ fontWeight: '400'
194
+ }
195
+ }, textDescription))), this.state.isOverlaid && /*#__PURE__*/React.createElement(View, {
196
+ style: {
197
+ position: 'absolute',
198
+ top: 0,
199
+ height: 52,
200
+ width: Dimensions.get('screen').width,
201
+ backgroundColor: 'rgba(35, 41, 51, 0.8)'
202
+ }
203
+ }))), AppChatStatic.initAppChatResult !== 'SUCCESS' && /*#__PURE__*/React.createElement(View, {
204
+ style: {
205
+ flex: 1,
206
+ justifyContent: 'center',
207
+ alignItems: 'center'
208
+ }
209
+ }, /*#__PURE__*/React.createElement(ActivityIndicator, {
210
+ size: "large"
211
+ })), AppChatStatic.initAppChatResult === 'SUCCESS' && /*#__PURE__*/React.createElement(WebView, {
212
+ bounces: false,
213
+ overScrollMode: "never",
214
+ setBuiltInZoomControls: false,
215
+ injectedJavaScriptBeforeContentLoaded: postMessageListener,
216
+ source: {
217
+ uri: `${Constant.BASE_URL_WEBVIEW}${Constant.ENCRYPTED_PARAMS_KEY}${AppChatStatic.encryptedUrlParams}`
218
+ },
219
+ onMessage: this._onMessage,
220
+ style: {
221
+ flex: 1,
222
+ backgroundColor: this.state.isOverlaid ? Constant.WEBVIEW_BACKGROUND_COLOR_OVERLAID : Constant.WEBVIEW_BACKGROUND_COLOR
223
+ }
224
+ })));
225
+ }
226
+ }
227
+ //# sourceMappingURL=AppChatComponent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["React","PureComponent","Fragment","ActivityIndicator","StatusBar","View","Dimensions","Text","TouchableOpacity","Image","PermissionsAndroid","Platform","AppChatStatic","initAppChat","WebView","Constant","putString","SafeAreaView","AppChatComponent","_isMounted","state","isOverlaid","toggleRefresh","constructor","props","_setState","setState","_requestPermission","permission","OS","granted","check","request","_onAccessTokenExpired","initAppChatResult","accessToken","encryptedUrlParams","componentDidMount","_onMessage","event","data","JSON","parse","nativeEvent","key","console","log","appChatOpened","setTimeout","appId","clientId","clientSecret","externalId","fullName","then","result","componentWillUnmount","render","onBackButtonTapped","bundleIdValidation","bgColorTheme","textHeader","textDescription","fontColor","appChatTheme","postMessageListener","createElement","style","flex","justifyContent","alignItems","textAlign","padding","BUNDLE_ID_INVALID","backgroundColor","bgColorThemeOverlaid","WEBVIEW_BACKGROUND_COLOR_OVERLAID","WEBVIEW_BACKGROUND_COLOR","barStyle","height","position","top","flexDirection","width","get","onPress","source","require","fontSize","color","fontWeight","size","bounces","overScrollMode","setBuiltInZoomControls","injectedJavaScriptBeforeContentLoaded","uri","BASE_URL_WEBVIEW","ENCRYPTED_PARAMS_KEY","onMessage"],"sourceRoot":"../../../../src","sources":["presentation/component/AppChatComponent.tsx"],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ import { getBundleIdOrPackageName, getString, putString } from "../../data/local";
2
+ import { authenticate, createContact, getWidgetSetting, registerFcmToken, validateBundleId } from "../../data/remote";
3
+ import { AppChatStatic } from "../../data/static";
4
+ import { calculateTextColorOutput, getEncryptedUrlParams, getOverlaidColor } from '../../common/utils';
5
+ import Constant from "../../common/constants";
6
+ export async function initAppChat(appId, clientId, clientSecret, externalId, fullName) {
7
+ AppChatStatic.appId = appId;
8
+ AppChatStatic.clientId = clientId;
9
+ AppChatStatic.clientSecret = clientSecret;
10
+ AppChatStatic.externalId = externalId;
11
+ AppChatStatic.fullName = fullName;
12
+
13
+ //is client app re-login?
14
+ const currentExternalId = await getString('externalId');
15
+ if (currentExternalId !== externalId) {
16
+ AppChatStatic.accessToken = '';
17
+ AppChatStatic.contactId = '';
18
+ AppChatStatic.bundleIdValidation = '';
19
+ AppChatStatic.encryptedUrlParams = '';
20
+ AppChatStatic.initAppChatResult = '';
21
+ AppChatStatic.appChatTheme.bgColorTheme = 'grey';
22
+ AppChatStatic.appChatTheme.fontColor = 'white';
23
+ AppChatStatic.appChatTheme.textHeader = '';
24
+ AppChatStatic.appChatTheme.textDescription = '';
25
+ AppChatStatic.fcmToken = '';
26
+ await putString('accessToken', 'default_value');
27
+ await putString('fcmToken', 'default_value');
28
+ await putString('contactId', 'default_value');
29
+ }
30
+ try {
31
+ //Authentication - accessToken
32
+ const accessToken = AppChatStatic.accessToken == '' ? await updateAccessToken(clientId, clientSecret) : AppChatStatic.accessToken;
33
+
34
+ //Create Contact - contactId
35
+ const contactId = AppChatStatic.contactId == '' ? await updateContactId(externalId, fullName) : AppChatStatic.contactId;
36
+
37
+ //Validate Bundle ID or Package Name - bundleIdValidation
38
+ const bundleIdValidation = AppChatStatic.bundleIdValidation !== 'success' ? await validateBundleIdOrPackageName() : AppChatStatic.bundleIdValidation;
39
+
40
+ //Encrypt URL Params - encryptedUrlParams
41
+ const encryptedUrlParams = AppChatStatic.encryptedUrlParams == '' ? updateEncryptedUrlParams() : AppChatStatic.encryptedUrlParams;
42
+
43
+ //Get theme - appChatTheme
44
+ AppChatStatic.appChatTheme.isAnyEmpty() ? await updateAppChatTheme() : AppChatStatic.appChatTheme;
45
+
46
+ //Register notif
47
+ if (AppChatStatic.fcmToken != '') {
48
+ const response = await registerFcmToken(AppChatStatic.fcmToken);
49
+ if (response.ok) {
50
+ await putString('fcmToken', AppChatStatic.fcmToken);
51
+ console.log("FCM token registration success, user can receive notification");
52
+ } else {
53
+ console.log("FCM token registration failed, user can't receive notification");
54
+ }
55
+ }
56
+
57
+ //Save result- initAppChatResult
58
+ if (accessToken != '' && contactId != '' && bundleIdValidation != '' && encryptedUrlParams != '' && !AppChatStatic.appChatTheme.isAnyEmpty()) AppChatStatic.initAppChatResult = 'SUCCESS';else AppChatStatic.initAppChatResult = 'FAILED';
59
+ if (AppChatStatic.initAppChatResult === 'SUCCESS') await putString('externalId', externalId);
60
+ return AppChatStatic.initAppChatResult;
61
+ } catch (error) {
62
+ return JSON.stringify(error);
63
+ }
64
+ }
65
+ async function updateAccessToken(clientId, clientSecret) {
66
+ const accessToken = await getString('accessToken');
67
+ if (accessToken) {
68
+ AppChatStatic.accessToken = accessToken;
69
+ } else {
70
+ const authResponse = await authenticate(clientId, clientSecret);
71
+ const authData = await authResponse.json();
72
+ if (!authResponse.ok) return authResponse.status;
73
+ AppChatStatic.accessToken = authData['access_token'];
74
+ await putString('accessToken', AppChatStatic.accessToken);
75
+ }
76
+ return AppChatStatic.accessToken;
77
+ }
78
+ async function updateContactId(externalId, fullName) {
79
+ const contactId = await getString('contactId');
80
+ if (contactId) {
81
+ AppChatStatic.contactId = contactId;
82
+ } else {
83
+ const createContactResponse = await createContact(externalId, fullName);
84
+ if (!createContactResponse.ok) return createContactResponse.status;
85
+ const createContactData = await createContactResponse.json();
86
+ AppChatStatic.contactId = createContactData.data['id'];
87
+ await putString('contactId', AppChatStatic.contactId);
88
+ }
89
+ return AppChatStatic.contactId;
90
+ }
91
+ async function validateBundleIdOrPackageName() {
92
+ const bundleIdValidation = await getString('bundleIdValidation');
93
+ let errorCode = undefined;
94
+ let errorMessage = undefined;
95
+ if (bundleIdValidation != 'success') {
96
+ const bundleId = await getBundleIdOrPackageName();
97
+ if (bundleId) {
98
+ const validateBundleIdResponse = await validateBundleId(bundleId);
99
+ const validateBundleIdData = await validateBundleIdResponse.json();
100
+ if (validateBundleIdResponse.ok) {
101
+ var _validateBundleIdData;
102
+ AppChatStatic.bundleIdValidation = (validateBundleIdData === null || validateBundleIdData === void 0 || (_validateBundleIdData = validateBundleIdData.data) === null || _validateBundleIdData === void 0 ? void 0 : _validateBundleIdData.status) === 'success' ? 'success' : 'failed';
103
+ if (AppChatStatic.bundleIdValidation == 'success') await putString('bundleIdValidation', 'success');
104
+ } else {
105
+ var _validateBundleIdData2;
106
+ errorCode = validateBundleIdResponse.status;
107
+ errorMessage = validateBundleIdData === null || validateBundleIdData === void 0 || (_validateBundleIdData2 = validateBundleIdData.error) === null || _validateBundleIdData2 === void 0 ? void 0 : _validateBundleIdData2.messages[0];
108
+ AppChatStatic.bundleIdValidation = 'failed';
109
+ }
110
+ } else {
111
+ AppChatStatic.bundleIdValidation = 'not available';
112
+ }
113
+ } else {
114
+ AppChatStatic.bundleIdValidation = bundleIdValidation;
115
+ }
116
+ if (AppChatStatic.bundleIdValidation != 'success' && AppChatStatic.bundleIdValidation != '') {
117
+ console.log(`${Constant.BUNDLE_ID_INVALID}\n${errorCode ?? ''} ${errorMessage ?? ''}`);
118
+ }
119
+ return AppChatStatic.bundleIdValidation;
120
+ }
121
+ function updateEncryptedUrlParams() {
122
+ AppChatStatic.encryptedUrlParams = getEncryptedUrlParams({
123
+ access_token: AppChatStatic.accessToken,
124
+ app_id: AppChatStatic.appId,
125
+ contact_id: AppChatStatic.contactId
126
+ });
127
+ return AppChatStatic.encryptedUrlParams;
128
+ }
129
+ async function updateAppChatTheme() {
130
+ var _await$response$json, _data$style, _data$header, _data$description;
131
+ const response = await getWidgetSetting();
132
+ const data = (_await$response$json = await response.json()) === null || _await$response$json === void 0 ? void 0 : _await$response$json.data;
133
+ if (!response.ok) return response.status;
134
+ AppChatStatic.appChatTheme.bgColorTheme = (_data$style = data.style) === null || _data$style === void 0 || (_data$style = _data$style.theme) === null || _data$style === void 0 ? void 0 : _data$style.bg_color;
135
+ AppChatStatic.appChatTheme.bgColorThemeOverlaid = getOverlaidColor(AppChatStatic.appChatTheme.bgColorTheme, Constant.OVERLAY_COLOR, Constant.OVERLAY_OPACITY);
136
+ AppChatStatic.appChatTheme.fontColor = calculateTextColorOutput(AppChatStatic.appChatTheme.bgColorTheme);
137
+ AppChatStatic.appChatTheme.textHeader = (_data$header = data.header) === null || _data$header === void 0 ? void 0 : _data$header.text;
138
+ AppChatStatic.appChatTheme.textDescription = (_data$description = data.description) === null || _data$description === void 0 ? void 0 : _data$description.text;
139
+ return AppChatStatic.appChatTheme;
140
+ }
141
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getBundleIdOrPackageName","getString","putString","authenticate","createContact","getWidgetSetting","registerFcmToken","validateBundleId","AppChatStatic","calculateTextColorOutput","getEncryptedUrlParams","getOverlaidColor","Constant","initAppChat","appId","clientId","clientSecret","externalId","fullName","currentExternalId","accessToken","contactId","bundleIdValidation","encryptedUrlParams","initAppChatResult","appChatTheme","bgColorTheme","fontColor","textHeader","textDescription","fcmToken","updateAccessToken","updateContactId","validateBundleIdOrPackageName","updateEncryptedUrlParams","isAnyEmpty","updateAppChatTheme","response","ok","console","log","error","JSON","stringify","authResponse","authData","json","status","createContactResponse","createContactData","data","errorCode","undefined","errorMessage","bundleId","validateBundleIdResponse","validateBundleIdData","_validateBundleIdData","_validateBundleIdData2","messages","BUNDLE_ID_INVALID","access_token","app_id","contact_id","_await$response$json","_data$style","_data$header","_data$description","style","theme","bg_color","bgColorThemeOverlaid","OVERLAY_COLOR","OVERLAY_OPACITY","header","text","description"],"sourceRoot":"../../../../src","sources":["presentation/initialization/index.tsx"],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ import { getString, putString } from "../../data/local";
2
+ import { registerFcmToken, revokeFcmToken } from "../../data/remote";
3
+ import { AppChatStatic } from "../../data/static";
4
+ export async function registerNotification(fcmToken) {
5
+ const localFcmToken = await getString('fcmToken');
6
+ if (fcmToken === localFcmToken) return;
7
+ if (AppChatStatic.initAppChatResult !== 'success') {
8
+ AppChatStatic.fcmToken = fcmToken;
9
+ return "FCM token registration : waiting initialization success";
10
+ } else {
11
+ const response = await registerFcmToken(fcmToken);
12
+ if (response.ok) {
13
+ await putString('fcmToken', fcmToken);
14
+ return "FCM token registration success, user can receive notification";
15
+ } else {
16
+ return "FCM token registration failed, user can't receive notification";
17
+ }
18
+ }
19
+ }
20
+ export async function revokeNotification() {
21
+ const localFcmToken = await getString('fcmToken');
22
+ if (localFcmToken == null) return;
23
+ const response = await revokeFcmToken(localFcmToken);
24
+ if (response.ok) {
25
+ AppChatStatic.fcmToken = '';
26
+ return "Revoke FCM token success";
27
+ } else {
28
+ return "Revoke FCM token failed";
29
+ }
30
+ }
31
+ export function isAppChatPayload(payload) {
32
+ if ((payload === null || payload === void 0 ? void 0 : payload.data) == null) {
33
+ return false;
34
+ } else {
35
+ return payload.data['notification_source'] == 'app-chat-qontak';
36
+ }
37
+ }
38
+ export function isAppChatOpened() {
39
+ return AppChatStatic.appChatOpened;
40
+ }
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getString","putString","registerFcmToken","revokeFcmToken","AppChatStatic","registerNotification","fcmToken","localFcmToken","initAppChatResult","response","ok","revokeNotification","isAppChatPayload","payload","data","isAppChatOpened","appChatOpened"],"sourceRoot":"../../../../src","sources":["presentation/notification/index.tsx"],"mappings":"AAAA,SAASA,SAAS,EAAEC,SAAS,QAAQ,kBAAkB;AACvD,SAASC,gBAAgB,EAAEC,cAAc,QAAQ,mBAAmB;AACpE,SAASC,aAAa,QAAQ,mBAAmB;AAEjD,OAAO,eAAeC,oBAAoBA,CAACC,QAAgB,EAAE;EAC3D,MAAMC,aAAa,GAAG,MAAMP,SAAS,CAAC,UAAU,CAAC;EACjD,IAAIM,QAAQ,KAAKC,aAAa,EAAE;EAChC,IAAIH,aAAa,CAACI,iBAAiB,KAAK,SAAS,EAAE;IACjDJ,aAAa,CAACE,QAAQ,GAAGA,QAAQ;IACjC,OAAO,yDAAyD;EAClE,CAAC,MAAM;IACL,MAAMG,QAAQ,GAAG,MAAMP,gBAAgB,CAACI,QAAQ,CAAC;IACjD,IAAIG,QAAQ,CAACC,EAAE,EAAE;MACf,MAAMT,SAAS,CAAC,UAAU,EAAEK,QAAQ,CAAC;MACrC,OAAO,+DAA+D;IACxE,CAAC,MAAM;MACL,OAAO,gEAAgE;IACzE;EACF;AACF;AAEA,OAAO,eAAeK,kBAAkBA,CAAA,EAAG;EACzC,MAAMJ,aAAa,GAAG,MAAMP,SAAS,CAAC,UAAU,CAAC;EACjD,IAAIO,aAAa,IAAI,IAAI,EAAE;EAC3B,MAAME,QAAQ,GAAG,MAAMN,cAAc,CAACI,aAAa,CAAC;EACpD,IAAIE,QAAQ,CAACC,EAAE,EAAE;IACfN,aAAa,CAACE,QAAQ,GAAG,EAAE;IAC3B,OAAO,0BAA0B;EACnC,CAAC,MACI;IACH,OAAO,yBAAyB;EAClC;AACF;AAEA,OAAO,SAASM,gBAAgBA,CAACC,OAAY,EAAW;EACtD,IAAI,CAAAA,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,IAAI,KAAI,IAAI,EAAE;IACzB,OAAO,KAAK;EACd,CAAC,MAAM;IACL,OAAOD,OAAO,CAACC,IAAI,CAAC,qBAAqB,CAAC,IAAI,iBAAiB;EACjE;AACF;AAEA,OAAO,SAASC,eAAeA,CAAA,EAAY;EACzC,OAAOX,aAAa,CAACY,aAAa;AACpC"}
@@ -0,0 +1,13 @@
1
+ export default class Constant {
2
+ static BASE_URL: string;
3
+ static ENCRYPTION_KEY: string;
4
+ static ENCRYPTION_IV: string;
5
+ static BASE_URL_WEBVIEW: string;
6
+ static ENCRYPTED_PARAMS_KEY: string;
7
+ static BUNDLE_ID_INVALID: string;
8
+ static WEBVIEW_BACKGROUND_COLOR: string;
9
+ static WEBVIEW_BACKGROUND_COLOR_OVERLAID: string;
10
+ static OVERLAY_COLOR: string;
11
+ static OVERLAY_OPACITY: number;
12
+ }
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/common/constants/index.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,OAAO,QAAQ;IAC3B,MAAM,CAAC,QAAQ,SAAoC;IACnD,MAAM,CAAC,cAAc,SAAqB;IAC1C,MAAM,CAAC,aAAa,SAAqB;IACzC,MAAM,CAAC,gBAAgB,SAAmC;IAC1D,MAAM,CAAC,oBAAoB,SAAW;IACtC,MAAM,CAAC,iBAAiB,SAAqH;IAC7I,MAAM,CAAC,wBAAwB,SAAY;IAC3C,MAAM,CAAC,iCAAiC,SAAY;IACpD,MAAM,CAAC,aAAa,SAAY;IAChC,MAAM,CAAC,eAAe,SAAM;CAC7B"}
@@ -0,0 +1,15 @@
1
+ type URLParamsAppChat = {
2
+ access_token: string;
3
+ app_id: string;
4
+ contact_id: string;
5
+ };
6
+ /**
7
+ * It takes a JSON object, converts it to a string, encrypts it, and returns the encrypted string
8
+ * @param data - The data to be encrypted.
9
+ * @returns A string of hexadecimal characters.
10
+ */
11
+ export declare function getEncryptedUrlParams(data: URLParamsAppChat): string;
12
+ export declare function calculateTextColorOutput(mainColor: string): string;
13
+ export declare function getOverlaidColor(mainColor: string, colorOverlay: string, opacityOverlay: number): string;
14
+ export {};
15
+ //# sourceMappingURL=index.d.ts.map