rn-linkrunner 0.5.0 → 0.5.1
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/lib/commonjs/index.js +44 -24
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/index.js +44 -24
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/index.d.ts +18 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +75 -33
package/lib/commonjs/index.js
CHANGED
|
@@ -8,7 +8,7 @@ var _reactNative = require("react-native");
|
|
|
8
8
|
var _reactNativeDeviceInfo = _interopRequireWildcard(require("react-native-device-info"));
|
|
9
9
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
10
10
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
11
|
-
const package_version = '0.5.
|
|
11
|
+
const package_version = '0.5.1';
|
|
12
12
|
const app_version = _reactNativeDeviceInfo.default.getVersion();
|
|
13
13
|
const device_data = {
|
|
14
14
|
android_id: _reactNativeDeviceInfo.default.getAndroidId(),
|
|
@@ -36,36 +36,41 @@ class Linkrunner {
|
|
|
36
36
|
constructor() {
|
|
37
37
|
this.token = null;
|
|
38
38
|
}
|
|
39
|
-
init(token) {
|
|
39
|
+
async init(token) {
|
|
40
40
|
if (!token) {
|
|
41
41
|
console.error('Linkrunner needs your project token to initialize!');
|
|
42
42
|
return;
|
|
43
43
|
}
|
|
44
44
|
this.token = token;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
45
|
+
try {
|
|
46
|
+
const fetch_result = await fetch(baseUrl + '/api/client/init', {
|
|
47
|
+
method: 'POST',
|
|
48
|
+
headers: {
|
|
49
|
+
'Accept': 'application/json',
|
|
50
|
+
'Content-Type': 'application/json'
|
|
51
|
+
},
|
|
52
|
+
body: JSON.stringify({
|
|
53
|
+
token,
|
|
54
|
+
package_version,
|
|
55
|
+
app_version,
|
|
56
|
+
device_data,
|
|
57
|
+
platform: 'REACT_NATIVE'
|
|
58
|
+
})
|
|
59
|
+
});
|
|
60
|
+
const result = await fetch_result.json();
|
|
61
|
+
|
|
62
|
+
// if (!result) throw new Error('No response obtained!');
|
|
63
|
+
|
|
60
64
|
if ((result === null || result === void 0 ? void 0 : result.status) !== 200 && (result === null || result === void 0 ? void 0 : result.status) !== 201) {
|
|
61
65
|
throw new Error(result === null || result === void 0 ? void 0 : result.msg);
|
|
62
66
|
}
|
|
63
67
|
if (__DEV__) {
|
|
64
68
|
console.log('Linkrunner initialised successfully 🔥');
|
|
65
69
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
70
|
+
return result === null || result === void 0 ? void 0 : result.data;
|
|
71
|
+
} catch (error) {
|
|
72
|
+
console.error('Error initializing linkrunner');
|
|
73
|
+
}
|
|
69
74
|
}
|
|
70
75
|
async trigger({
|
|
71
76
|
data,
|
|
@@ -77,7 +82,7 @@ class Linkrunner {
|
|
|
77
82
|
return;
|
|
78
83
|
}
|
|
79
84
|
try {
|
|
80
|
-
var _result$data;
|
|
85
|
+
var _result$data, _result$data2;
|
|
81
86
|
const response = await fetch(baseUrl + '/api/client/trigger', {
|
|
82
87
|
method: 'POST',
|
|
83
88
|
headers: {
|
|
@@ -100,9 +105,24 @@ class Linkrunner {
|
|
|
100
105
|
console.error('Linkrunner: ', result === null || result === void 0 ? void 0 : result.msg);
|
|
101
106
|
return;
|
|
102
107
|
}
|
|
103
|
-
if (result !== null && result !== void 0 && (_result$data = result.data) !== null && _result$data !== void 0 && _result$data.deeplink && (config === null || config === void 0 ? void 0 : config.trigger_deeplink) !== false) {
|
|
104
|
-
var _result$
|
|
105
|
-
|
|
108
|
+
if (result !== null && result !== void 0 && (_result$data = result.data) !== null && _result$data !== void 0 && _result$data.deeplink && (config === null || config === void 0 ? void 0 : config.trigger_deeplink) !== false && result !== null && result !== void 0 && (_result$data2 = result.data) !== null && _result$data2 !== void 0 && _result$data2.trigger) {
|
|
109
|
+
var _result$data4;
|
|
110
|
+
if (__DEV__) {
|
|
111
|
+
var _result$data3;
|
|
112
|
+
console.log('Triggering deeplink > ', result === null || result === void 0 || (_result$data3 = result.data) === null || _result$data3 === void 0 ? void 0 : _result$data3.deeplink);
|
|
113
|
+
}
|
|
114
|
+
_reactNative.Linking.openURL(result === null || result === void 0 || (_result$data4 = result.data) === null || _result$data4 === void 0 ? void 0 : _result$data4.deeplink).then(() => {
|
|
115
|
+
fetch(baseUrl + '/api/client/deeplink-triggered', {
|
|
116
|
+
method: 'POST',
|
|
117
|
+
headers: {
|
|
118
|
+
'Accept': 'application/json',
|
|
119
|
+
'Content-Type': 'application/json'
|
|
120
|
+
},
|
|
121
|
+
body: JSON.stringify({
|
|
122
|
+
token: this.token
|
|
123
|
+
})
|
|
124
|
+
}).then(res => res.json()).catch(() => {});
|
|
125
|
+
});
|
|
106
126
|
}
|
|
107
127
|
if (__DEV__) {
|
|
108
128
|
console.log('Linkrunner: Trigger called 🔥');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_reactNativeDeviceInfo","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","package_version","app_version","DeviceInfo","getVersion","device_data","android_id","getAndroidId","api_level","getApiLevel","application_name","getApplicationName","base_os","getBaseOs","build_id","getBuildId","brand","getBrand","build_number","getBuildNumber","bundle_id","getBundleId","carrier","getCarrier","device","getDevice","device_id","getDeviceId","device_type","getDeviceType","device_name","getDeviceName","device_token","getDeviceToken","device_ip","getIpAddress","install_ref","getInstallReferrer","manufacturer","getManufacturer","system_version","getSystemVersion","version","baseUrl","Linkrunner","constructor","token","init","console","error","fetch","method","headers","body","JSON","stringify","platform","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_reactNativeDeviceInfo","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","package_version","app_version","DeviceInfo","getVersion","device_data","android_id","getAndroidId","api_level","getApiLevel","application_name","getApplicationName","base_os","getBaseOs","build_id","getBuildId","brand","getBrand","build_number","getBuildNumber","bundle_id","getBundleId","carrier","getCarrier","device","getDevice","device_id","getDeviceId","device_type","getDeviceType","device_name","getDeviceName","device_token","getDeviceToken","device_ip","getIpAddress","install_ref","getInstallReferrer","manufacturer","getManufacturer","system_version","getSystemVersion","version","baseUrl","Linkrunner","constructor","token","init","console","error","fetch_result","fetch","method","headers","body","JSON","stringify","platform","result","json","status","Error","msg","__DEV__","log","data","trigger","user_data","config","_result$data","_result$data2","response","deeplink","trigger_deeplink","_result$data4","_result$data3","Linking","openURL","then","res","catch","err","message","linkrunner","_default","exports"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
package/lib/module/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Linking } from 'react-native';
|
|
2
2
|
import DeviceInfo, { getManufacturer, getSystemVersion } from 'react-native-device-info';
|
|
3
|
-
const package_version = '0.5.
|
|
3
|
+
const package_version = '0.5.1';
|
|
4
4
|
const app_version = DeviceInfo.getVersion();
|
|
5
5
|
const device_data = {
|
|
6
6
|
android_id: DeviceInfo.getAndroidId(),
|
|
@@ -28,36 +28,41 @@ class Linkrunner {
|
|
|
28
28
|
constructor() {
|
|
29
29
|
this.token = null;
|
|
30
30
|
}
|
|
31
|
-
init(token) {
|
|
31
|
+
async init(token) {
|
|
32
32
|
if (!token) {
|
|
33
33
|
console.error('Linkrunner needs your project token to initialize!');
|
|
34
34
|
return;
|
|
35
35
|
}
|
|
36
36
|
this.token = token;
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
37
|
+
try {
|
|
38
|
+
const fetch_result = await fetch(baseUrl + '/api/client/init', {
|
|
39
|
+
method: 'POST',
|
|
40
|
+
headers: {
|
|
41
|
+
'Accept': 'application/json',
|
|
42
|
+
'Content-Type': 'application/json'
|
|
43
|
+
},
|
|
44
|
+
body: JSON.stringify({
|
|
45
|
+
token,
|
|
46
|
+
package_version,
|
|
47
|
+
app_version,
|
|
48
|
+
device_data,
|
|
49
|
+
platform: 'REACT_NATIVE'
|
|
50
|
+
})
|
|
51
|
+
});
|
|
52
|
+
const result = await fetch_result.json();
|
|
53
|
+
|
|
54
|
+
// if (!result) throw new Error('No response obtained!');
|
|
55
|
+
|
|
52
56
|
if ((result === null || result === void 0 ? void 0 : result.status) !== 200 && (result === null || result === void 0 ? void 0 : result.status) !== 201) {
|
|
53
57
|
throw new Error(result === null || result === void 0 ? void 0 : result.msg);
|
|
54
58
|
}
|
|
55
59
|
if (__DEV__) {
|
|
56
60
|
console.log('Linkrunner initialised successfully 🔥');
|
|
57
61
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
62
|
+
return result === null || result === void 0 ? void 0 : result.data;
|
|
63
|
+
} catch (error) {
|
|
64
|
+
console.error('Error initializing linkrunner');
|
|
65
|
+
}
|
|
61
66
|
}
|
|
62
67
|
async trigger({
|
|
63
68
|
data,
|
|
@@ -69,7 +74,7 @@ class Linkrunner {
|
|
|
69
74
|
return;
|
|
70
75
|
}
|
|
71
76
|
try {
|
|
72
|
-
var _result$data;
|
|
77
|
+
var _result$data, _result$data2;
|
|
73
78
|
const response = await fetch(baseUrl + '/api/client/trigger', {
|
|
74
79
|
method: 'POST',
|
|
75
80
|
headers: {
|
|
@@ -92,9 +97,24 @@ class Linkrunner {
|
|
|
92
97
|
console.error('Linkrunner: ', result === null || result === void 0 ? void 0 : result.msg);
|
|
93
98
|
return;
|
|
94
99
|
}
|
|
95
|
-
if (result !== null && result !== void 0 && (_result$data = result.data) !== null && _result$data !== void 0 && _result$data.deeplink && (config === null || config === void 0 ? void 0 : config.trigger_deeplink) !== false) {
|
|
96
|
-
var _result$
|
|
97
|
-
|
|
100
|
+
if (result !== null && result !== void 0 && (_result$data = result.data) !== null && _result$data !== void 0 && _result$data.deeplink && (config === null || config === void 0 ? void 0 : config.trigger_deeplink) !== false && result !== null && result !== void 0 && (_result$data2 = result.data) !== null && _result$data2 !== void 0 && _result$data2.trigger) {
|
|
101
|
+
var _result$data4;
|
|
102
|
+
if (__DEV__) {
|
|
103
|
+
var _result$data3;
|
|
104
|
+
console.log('Triggering deeplink > ', result === null || result === void 0 || (_result$data3 = result.data) === null || _result$data3 === void 0 ? void 0 : _result$data3.deeplink);
|
|
105
|
+
}
|
|
106
|
+
Linking.openURL(result === null || result === void 0 || (_result$data4 = result.data) === null || _result$data4 === void 0 ? void 0 : _result$data4.deeplink).then(() => {
|
|
107
|
+
fetch(baseUrl + '/api/client/deeplink-triggered', {
|
|
108
|
+
method: 'POST',
|
|
109
|
+
headers: {
|
|
110
|
+
'Accept': 'application/json',
|
|
111
|
+
'Content-Type': 'application/json'
|
|
112
|
+
},
|
|
113
|
+
body: JSON.stringify({
|
|
114
|
+
token: this.token
|
|
115
|
+
})
|
|
116
|
+
}).then(res => res.json()).catch(() => {});
|
|
117
|
+
});
|
|
98
118
|
}
|
|
99
119
|
if (__DEV__) {
|
|
100
120
|
console.log('Linkrunner: Trigger called 🔥');
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Linking","DeviceInfo","getManufacturer","getSystemVersion","package_version","app_version","getVersion","device_data","android_id","getAndroidId","api_level","getApiLevel","application_name","getApplicationName","base_os","getBaseOs","build_id","getBuildId","brand","getBrand","build_number","getBuildNumber","bundle_id","getBundleId","carrier","getCarrier","device","getDevice","device_id","getDeviceId","device_type","getDeviceType","device_name","getDeviceName","device_token","getDeviceToken","device_ip","getIpAddress","install_ref","getInstallReferrer","manufacturer","system_version","version","baseUrl","Linkrunner","constructor","token","init","console","error","fetch","method","headers","body","JSON","stringify","platform","
|
|
1
|
+
{"version":3,"names":["Linking","DeviceInfo","getManufacturer","getSystemVersion","package_version","app_version","getVersion","device_data","android_id","getAndroidId","api_level","getApiLevel","application_name","getApplicationName","base_os","getBaseOs","build_id","getBuildId","brand","getBrand","build_number","getBuildNumber","bundle_id","getBundleId","carrier","getCarrier","device","getDevice","device_id","getDeviceId","device_type","getDeviceType","device_name","getDeviceName","device_token","getDeviceToken","device_ip","getIpAddress","install_ref","getInstallReferrer","manufacturer","system_version","version","baseUrl","Linkrunner","constructor","token","init","console","error","fetch_result","fetch","method","headers","body","JSON","stringify","platform","result","json","status","Error","msg","__DEV__","log","data","trigger","user_data","config","_result$data","_result$data2","response","deeplink","trigger_deeplink","_result$data4","_result$data3","openURL","then","res","catch","err","message","linkrunner"],"sourceRoot":"../../src","sources":["index.ts"],"mappings":"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"}
|
|
@@ -7,15 +7,31 @@ interface UserData {
|
|
|
7
7
|
interface TriggerConfig {
|
|
8
8
|
trigger_deeplink?: boolean;
|
|
9
9
|
}
|
|
10
|
+
export type Response = {
|
|
11
|
+
ip_location_data: IPLocationData;
|
|
12
|
+
deeplink: string;
|
|
13
|
+
root_domain: boolean;
|
|
14
|
+
};
|
|
15
|
+
export interface IPLocationData {
|
|
16
|
+
ip: string;
|
|
17
|
+
city: string;
|
|
18
|
+
countryLong: string;
|
|
19
|
+
countryShort: string;
|
|
20
|
+
latitude: number;
|
|
21
|
+
longitude: number;
|
|
22
|
+
region: string;
|
|
23
|
+
timeZone: string;
|
|
24
|
+
zipCode: string;
|
|
25
|
+
}
|
|
10
26
|
declare class Linkrunner {
|
|
11
27
|
private token;
|
|
12
28
|
constructor();
|
|
13
|
-
init(token: string): void
|
|
29
|
+
init(token: string): Promise<void | Response>;
|
|
14
30
|
trigger({ data, user_data, config, }: {
|
|
15
31
|
config?: TriggerConfig;
|
|
16
32
|
data: any;
|
|
17
33
|
user_data: UserData;
|
|
18
|
-
}): Promise<void>;
|
|
34
|
+
}): Promise<void | Response>;
|
|
19
35
|
}
|
|
20
36
|
declare const linkrunner: Linkrunner;
|
|
21
37
|
export default linkrunner;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAiCA,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,aAAa;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,cAAM,UAAU;IACd,OAAO,CAAC,KAAK,CAAgB;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAiCA,UAAU,QAAQ;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,aAAa;IACrB,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,gBAAgB,EAAE,cAAc,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,cAAM,UAAU;IACd,OAAO,CAAC,KAAK,CAAgB;;IAMvB,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;IAyC7C,OAAO,CAAC,EACZ,IAAI,EACJ,SAAS,EACT,MAAM,GACP,EAAE;QACD,MAAM,CAAC,EAAE,aAAa,CAAC;QACvB,IAAI,EAAE,GAAG,CAAC;QACV,SAAS,EAAE,QAAQ,CAAC;KACrB,GAAG,OAAO,CAAC,IAAI,GAAG,QAAQ,CAAC;CAkE7B;AAED,QAAA,MAAM,UAAU,YAAmB,CAAC;AAEpC,eAAe,UAAU,CAAC"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -4,7 +4,7 @@ import DeviceInfo, {
|
|
|
4
4
|
getSystemVersion,
|
|
5
5
|
} from 'react-native-device-info';
|
|
6
6
|
|
|
7
|
-
const package_version = '0.5.
|
|
7
|
+
const package_version = '0.5.1';
|
|
8
8
|
const app_version: string = DeviceInfo.getVersion();
|
|
9
9
|
|
|
10
10
|
const device_data = {
|
|
@@ -42,6 +42,24 @@ interface TriggerConfig {
|
|
|
42
42
|
trigger_deeplink?: boolean;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
export type Response = {
|
|
46
|
+
ip_location_data: IPLocationData;
|
|
47
|
+
deeplink: string;
|
|
48
|
+
root_domain: boolean;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export interface IPLocationData {
|
|
52
|
+
ip: string;
|
|
53
|
+
city: string;
|
|
54
|
+
countryLong: string;
|
|
55
|
+
countryShort: string;
|
|
56
|
+
latitude: number;
|
|
57
|
+
longitude: number;
|
|
58
|
+
region: string;
|
|
59
|
+
timeZone: string;
|
|
60
|
+
zipCode: string;
|
|
61
|
+
}
|
|
62
|
+
|
|
45
63
|
class Linkrunner {
|
|
46
64
|
private token: string | null;
|
|
47
65
|
|
|
@@ -49,42 +67,45 @@ class Linkrunner {
|
|
|
49
67
|
this.token = null;
|
|
50
68
|
}
|
|
51
69
|
|
|
52
|
-
init(token: string): void {
|
|
70
|
+
async init(token: string): Promise<void | Response> {
|
|
53
71
|
if (!token) {
|
|
54
72
|
console.error('Linkrunner needs your project token to initialize!');
|
|
55
73
|
return;
|
|
56
74
|
}
|
|
57
75
|
|
|
58
76
|
this.token = token;
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
.then((res) => res.json())
|
|
74
|
-
.then((result) => {
|
|
75
|
-
if (!result) throw new Error('No response obtained!');
|
|
76
|
-
|
|
77
|
-
if (result?.status !== 200 && result?.status !== 201) {
|
|
78
|
-
throw new Error(result?.msg);
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
if (__DEV__) {
|
|
82
|
-
console.log('Linkrunner initialised successfully 🔥');
|
|
83
|
-
}
|
|
84
|
-
})
|
|
85
|
-
.catch((err) => {
|
|
86
|
-
console.error('Error initializing linkrunner: ', err.message);
|
|
77
|
+
try {
|
|
78
|
+
const fetch_result = await fetch(baseUrl + '/api/client/init', {
|
|
79
|
+
method: 'POST',
|
|
80
|
+
headers: {
|
|
81
|
+
'Accept': 'application/json',
|
|
82
|
+
'Content-Type': 'application/json',
|
|
83
|
+
},
|
|
84
|
+
body: JSON.stringify({
|
|
85
|
+
token,
|
|
86
|
+
package_version,
|
|
87
|
+
app_version,
|
|
88
|
+
device_data,
|
|
89
|
+
platform: 'REACT_NATIVE',
|
|
90
|
+
}),
|
|
87
91
|
});
|
|
92
|
+
|
|
93
|
+
const result = await fetch_result.json();
|
|
94
|
+
|
|
95
|
+
// if (!result) throw new Error('No response obtained!');
|
|
96
|
+
|
|
97
|
+
if (result?.status !== 200 && result?.status !== 201) {
|
|
98
|
+
throw new Error(result?.msg);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (__DEV__) {
|
|
102
|
+
console.log('Linkrunner initialised successfully 🔥');
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
return result?.data;
|
|
106
|
+
} catch (error) {
|
|
107
|
+
console.error('Error initializing linkrunner');
|
|
108
|
+
}
|
|
88
109
|
}
|
|
89
110
|
|
|
90
111
|
async trigger({
|
|
@@ -95,7 +116,7 @@ class Linkrunner {
|
|
|
95
116
|
config?: TriggerConfig;
|
|
96
117
|
data: any;
|
|
97
118
|
user_data: UserData;
|
|
98
|
-
}): Promise<void> {
|
|
119
|
+
}): Promise<void | Response> {
|
|
99
120
|
if (!this.token) {
|
|
100
121
|
console.error('Linkrunner: Trigger failed, token not initialized');
|
|
101
122
|
return;
|
|
@@ -126,8 +147,29 @@ class Linkrunner {
|
|
|
126
147
|
return;
|
|
127
148
|
}
|
|
128
149
|
|
|
129
|
-
if (
|
|
130
|
-
|
|
150
|
+
if (
|
|
151
|
+
result?.data?.deeplink &&
|
|
152
|
+
config?.trigger_deeplink !== false &&
|
|
153
|
+
result?.data?.trigger
|
|
154
|
+
) {
|
|
155
|
+
if (__DEV__) {
|
|
156
|
+
console.log('Triggering deeplink > ', result?.data?.deeplink);
|
|
157
|
+
}
|
|
158
|
+
|
|
159
|
+
Linking.openURL(result?.data?.deeplink).then(() => {
|
|
160
|
+
fetch(baseUrl + '/api/client/deeplink-triggered', {
|
|
161
|
+
method: 'POST',
|
|
162
|
+
headers: {
|
|
163
|
+
'Accept': 'application/json',
|
|
164
|
+
'Content-Type': 'application/json',
|
|
165
|
+
},
|
|
166
|
+
body: JSON.stringify({
|
|
167
|
+
token: this.token,
|
|
168
|
+
}),
|
|
169
|
+
})
|
|
170
|
+
.then((res) => res.json())
|
|
171
|
+
.catch(() => {});
|
|
172
|
+
});
|
|
131
173
|
}
|
|
132
174
|
|
|
133
175
|
if (__DEV__) {
|