hypertrack-sdk-react-native 10.0.3 → 11.0.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/CHANGELOG.md +54 -0
- package/CONTRIBUTING.md +1 -1
- package/README.md +2 -2
- package/android/build.gradle +5 -1
- package/android/gradle.properties +1 -1
- package/android/src/main/java/com/reactnativehypertracksdk/HyperTrackReactNativePlugin.kt +80 -115
- package/android/src/main/java/com/reactnativehypertracksdk/ReactNativeSerialization.kt +23 -3
- package/android/src/main/java/com/reactnativehypertracksdk/common/HyperTrackSdkWrapper.kt +87 -220
- package/android/src/main/java/com/reactnativehypertracksdk/common/SdkMethod.kt +11 -9
- package/android/src/main/java/com/reactnativehypertracksdk/common/Serialization.kt +216 -132
- package/android/src/main/java/com/reactnativehypertracksdk/common/{Result.kt → WrapperResult.kt} +9 -7
- package/hypertrack-sdk-react-native.podspec +1 -1
- package/ios/HyperTrackReactNativePlugin.m +13 -11
- package/ios/HyperTrackReactNativePlugin.swift +141 -114
- package/ios/common/DictionaryDecoder.swift +5 -5
- package/ios/common/HyperTrackSDKWrapper.swift +46 -80
- package/ios/common/SDKMethod.swift +13 -12
- package/ios/common/Serialization.swift +200 -245
- package/lib/commonjs/HyperTrack/HyperTrack.js +224 -124
- package/lib/commonjs/HyperTrack/HyperTrack.js.map +1 -1
- package/lib/commonjs/HyperTrack/data_types/HyperTrackError.js +13 -17
- package/lib/commonjs/HyperTrack/data_types/HyperTrackError.js.map +1 -1
- package/lib/commonjs/HyperTrack/data_types/internal/HyperTrackErrorInternal.js.map +1 -1
- package/lib/commonjs/HyperTrack/data_types/internal/Metadata.js +2 -0
- package/lib/commonjs/HyperTrack/data_types/internal/Metadata.js.map +1 -0
- package/lib/commonjs/HyperTrack/data_types/internal/Name.js +2 -0
- package/lib/commonjs/HyperTrack/data_types/internal/Name.js.map +1 -0
- package/lib/commonjs/index.js +0 -7
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/HyperTrack/HyperTrack.js +224 -124
- package/lib/module/HyperTrack/HyperTrack.js.map +1 -1
- package/lib/module/HyperTrack/data_types/HyperTrackError.js +13 -17
- package/lib/module/HyperTrack/data_types/HyperTrackError.js.map +1 -1
- package/lib/module/HyperTrack/data_types/internal/HyperTrackErrorInternal.js.map +1 -1
- package/lib/module/HyperTrack/data_types/internal/Metadata.js +2 -0
- package/lib/module/HyperTrack/data_types/internal/Metadata.js.map +1 -0
- package/lib/module/HyperTrack/data_types/internal/Name.js +2 -0
- package/lib/module/HyperTrack/data_types/internal/Name.js.map +1 -0
- package/lib/module/index.js +0 -1
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/HyperTrack/HyperTrack.d.ts +106 -54
- package/lib/typescript/HyperTrack/data_types/HyperTrackError.d.ts +59 -17
- package/lib/typescript/HyperTrack/data_types/internal/HyperTrackErrorInternal.d.ts +1 -1
- package/lib/typescript/HyperTrack/data_types/internal/Metadata.d.ts +4 -0
- package/lib/typescript/HyperTrack/data_types/internal/Name.d.ts +7 -0
- package/lib/typescript/index.d.ts +0 -1
- package/package.json +1 -1
- package/src/HyperTrack/HyperTrack.ts +281 -161
- package/src/HyperTrack/data_types/HyperTrackError.ts +73 -18
- package/src/HyperTrack/data_types/internal/HyperTrackErrorInternal.ts +3 -3
- package/src/HyperTrack/data_types/internal/Metadata.ts +4 -0
- package/src/HyperTrack/data_types/internal/Name.ts +7 -0
- package/src/index.tsx +0 -1
- package/android/src/main/java/com/reactnativehypertracksdk/common/HyperTrackError.kt +0 -28
- package/android/src/main/java/com/reactnativehypertracksdk/common/LocationError.kt +0 -9
- package/android/src/main/java/com/reactnativehypertracksdk/common/SdkInitParams.kt +0 -44
- package/ios/common/HyperTrackError.swift +0 -20
- package/ios/common/SDKInitParams.swift +0 -13
- package/lib/commonjs/HyperTrack/data_types/SdkInitParams.js +0 -2
- package/lib/commonjs/HyperTrack/data_types/SdkInitParams.js.map +0 -1
- package/lib/commonjs/HyperTrack/data_types/internal/DeviceName.js +0 -2
- package/lib/commonjs/HyperTrack/data_types/internal/DeviceName.js.map +0 -1
- package/lib/module/HyperTrack/data_types/SdkInitParams.js +0 -2
- package/lib/module/HyperTrack/data_types/SdkInitParams.js.map +0 -1
- package/lib/module/HyperTrack/data_types/internal/DeviceName.js +0 -2
- package/lib/module/HyperTrack/data_types/internal/DeviceName.js.map +0 -1
- package/lib/typescript/HyperTrack/data_types/SdkInitParams.d.ts +0 -25
- package/lib/typescript/HyperTrack/data_types/internal/DeviceName.d.ts +0 -4
- package/src/HyperTrack/data_types/SdkInitParams.ts +0 -28
- package/src/HyperTrack/data_types/internal/DeviceName.ts +0 -4
|
@@ -6,9 +6,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _reactNative = require("react-native");
|
|
8
8
|
var _HyperTrackError = require("./data_types/HyperTrackError");
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
10
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
11
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
12
|
+
const EVENT_ERRORS = 'errors';
|
|
13
|
+
const EVENT_IS_AVAILABLE = 'isAvailable';
|
|
14
|
+
const EVENT_IS_TRACKING = 'isTracking';
|
|
15
|
+
const EVENT_LOCATE = 'locate';
|
|
16
|
+
const EVENT_LOCATION = 'location';
|
|
12
17
|
const LINKING_ERROR = `The package 'hypertrack-sdk-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
|
|
13
18
|
ios: "- You have run 'pod install'\n",
|
|
14
19
|
default: ''
|
|
@@ -20,162 +25,197 @@ const HyperTrackSdk = _reactNative.NativeModules.HyperTrackReactNativePlugin ? _
|
|
|
20
25
|
});
|
|
21
26
|
const EventEmitter = new _reactNative.NativeEventEmitter(HyperTrackSdk);
|
|
22
27
|
class HyperTrack {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
28
|
+
/**
|
|
29
|
+
* Adds a new geotag
|
|
30
|
+
*
|
|
31
|
+
* @param {Object} data - Geotad data JSON
|
|
32
|
+
* @returns current location if success or LocationError if failure
|
|
33
|
+
*/
|
|
26
34
|
|
|
27
35
|
/**
|
|
28
|
-
*
|
|
36
|
+
* Adds a new geotag with expected location
|
|
29
37
|
*
|
|
30
|
-
* @param
|
|
31
|
-
* @param
|
|
32
|
-
* @returns
|
|
38
|
+
* @param {Object} data - Geotad data JSON
|
|
39
|
+
* @param {Location} expectedLocation - Expected location
|
|
40
|
+
* @returns location with deviation if success or LocationError if failure
|
|
33
41
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
|
|
43
|
+
static async addGeotag() {
|
|
44
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
45
|
+
args[_key] = arguments[_key];
|
|
46
|
+
}
|
|
47
|
+
if (args.length === 1 && typeof args[0] === 'object') {
|
|
48
|
+
return HyperTrackSdk.addGeotag({
|
|
49
|
+
data: args[0],
|
|
50
|
+
expectedLocation: undefined
|
|
51
|
+
}).then(locationResponse => {
|
|
52
|
+
return this.deserializeLocationResponse(locationResponse);
|
|
43
53
|
});
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
54
|
+
} else if (args.length === 2 && typeof args[0] === 'object' && HyperTrack.isLocation(args[1])) {
|
|
55
|
+
let expectedLocation = args[1];
|
|
56
|
+
return HyperTrackSdk.addGeotag({
|
|
57
|
+
data: args[0],
|
|
58
|
+
expectedLocation: {
|
|
59
|
+
type: 'location',
|
|
60
|
+
value: {
|
|
61
|
+
latitude: expectedLocation.latitude,
|
|
62
|
+
longitude: expectedLocation.longitude
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}).then(locationResponse => {
|
|
66
|
+
return this.deserializeLocationWithDeviationResponse(locationResponse);
|
|
67
|
+
});
|
|
68
|
+
} else {
|
|
69
|
+
throw new Error('Invalid arguments');
|
|
47
70
|
}
|
|
48
71
|
}
|
|
49
72
|
|
|
50
73
|
/**
|
|
51
74
|
* Returns a string that is used to uniquely identify the device
|
|
75
|
+
*
|
|
76
|
+
* @returns {string} Device ID
|
|
52
77
|
*/
|
|
53
|
-
getDeviceId() {
|
|
78
|
+
static async getDeviceId() {
|
|
54
79
|
return HyperTrackSdk.getDeviceId().then(deviceId => deviceId.value);
|
|
55
80
|
}
|
|
56
81
|
|
|
57
82
|
/**
|
|
58
|
-
*
|
|
83
|
+
* Returns a list of errors that blocks SDK from tracking
|
|
59
84
|
*
|
|
60
|
-
* @returns
|
|
85
|
+
* @returns {HyperTrackError[]} List of errors
|
|
61
86
|
*/
|
|
62
|
-
|
|
63
|
-
return HyperTrackSdk.
|
|
87
|
+
static async getErrors() {
|
|
88
|
+
return HyperTrackSdk.getErrors().then(errors => {
|
|
89
|
+
return this.deserializeHyperTrackErrors(errors);
|
|
90
|
+
});
|
|
64
91
|
}
|
|
65
92
|
|
|
66
93
|
/**
|
|
67
|
-
*
|
|
94
|
+
* Reflects availability of the device for the Nearby search
|
|
68
95
|
*
|
|
69
|
-
* @
|
|
96
|
+
* @returns true when is available or false when unavailable
|
|
70
97
|
*/
|
|
71
|
-
|
|
72
|
-
HyperTrackSdk.
|
|
73
|
-
type: 'isAvailable',
|
|
74
|
-
value: isAvailable
|
|
75
|
-
});
|
|
98
|
+
static async getIsAvailable() {
|
|
99
|
+
return HyperTrackSdk.getIsAvailable().then(isAvailable => isAvailable.value);
|
|
76
100
|
}
|
|
77
101
|
|
|
78
102
|
/**
|
|
79
103
|
* Reflects the tracking intent for the device
|
|
80
104
|
*
|
|
81
|
-
* @
|
|
105
|
+
* @returns {boolean} Whether the user's movement data is getting tracked or not.
|
|
82
106
|
*/
|
|
83
|
-
|
|
84
|
-
return HyperTrackSdk.
|
|
107
|
+
static async getIsTracking() {
|
|
108
|
+
return HyperTrackSdk.getIsTracking().then(isTracking => isTracking.value);
|
|
85
109
|
}
|
|
86
110
|
|
|
87
111
|
/**
|
|
88
|
-
*
|
|
112
|
+
* Reflects the current location of the user or an outage reason
|
|
89
113
|
*/
|
|
90
|
-
|
|
91
|
-
HyperTrackSdk.
|
|
114
|
+
static async getLocation() {
|
|
115
|
+
return HyperTrackSdk.getLocation().then(locationResponse => {
|
|
116
|
+
return this.deserializeLocationResponse(locationResponse);
|
|
117
|
+
});
|
|
92
118
|
}
|
|
93
119
|
|
|
94
120
|
/**
|
|
95
|
-
*
|
|
121
|
+
* Gets the metadata that is set for the device
|
|
122
|
+
*
|
|
123
|
+
* @returns {Object} Metadata JSON
|
|
96
124
|
*/
|
|
97
|
-
|
|
98
|
-
HyperTrackSdk.
|
|
125
|
+
static async getMetadata() {
|
|
126
|
+
return HyperTrackSdk.getMetadata().then(metadata => {
|
|
127
|
+
return this.deserializeMetadata(metadata);
|
|
128
|
+
});
|
|
99
129
|
}
|
|
100
130
|
|
|
101
131
|
/**
|
|
102
|
-
*
|
|
132
|
+
* Gets the name that is set for the device
|
|
133
|
+
*
|
|
134
|
+
* @returns {string} Device name
|
|
103
135
|
*/
|
|
104
|
-
|
|
105
|
-
HyperTrackSdk.
|
|
136
|
+
static async getName() {
|
|
137
|
+
return HyperTrackSdk.getName().then(name => {
|
|
138
|
+
return this.deserializeName(name);
|
|
139
|
+
});
|
|
106
140
|
}
|
|
107
141
|
|
|
108
142
|
/**
|
|
109
|
-
*
|
|
143
|
+
* Requests one-time location update and returns the location once it is available, or error.
|
|
144
|
+
*
|
|
145
|
+
* Only one locate subscription can be active at a time. If you re-subscribe, the old EmitterSubscription
|
|
146
|
+
* will be automaticaly removed.
|
|
147
|
+
*
|
|
148
|
+
* This method will start location tracking if called, and will stop it when the location is received or
|
|
149
|
+
* the subscription is cancelled. If any other tracking intent is present (e.g. isAvailable is set to `true`),
|
|
150
|
+
* the tracking will not be stopped.
|
|
151
|
+
*
|
|
152
|
+
* @param callback
|
|
153
|
+
* @returns EmitterSubscription
|
|
154
|
+
* @example ```js
|
|
155
|
+
* const subscription = HyperTrack.locate(location => {
|
|
156
|
+
* ...
|
|
157
|
+
* })
|
|
158
|
+
*
|
|
159
|
+
* // to unsubscribe
|
|
160
|
+
* subscription.remove()
|
|
161
|
+
* ```
|
|
110
162
|
*/
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
163
|
+
static locate(callback) {
|
|
164
|
+
var _this$locateSubscript;
|
|
165
|
+
(_this$locateSubscript = this.locateSubscription) === null || _this$locateSubscript === void 0 ? void 0 : _this$locateSubscript.remove();
|
|
166
|
+
this.locateSubscription = EventEmitter.addListener(EVENT_LOCATE, location => {
|
|
167
|
+
callback(this.deserializeLocateResponse(location));
|
|
114
168
|
});
|
|
169
|
+
HyperTrackSdk.locate();
|
|
170
|
+
return this.locateSubscription;
|
|
115
171
|
}
|
|
116
172
|
|
|
117
173
|
/**
|
|
118
|
-
* Sets the
|
|
119
|
-
*
|
|
174
|
+
* Sets the availability of the device for the Nearby search
|
|
175
|
+
*
|
|
176
|
+
* @param availability true when is available or false when unavailable
|
|
120
177
|
*/
|
|
121
|
-
|
|
122
|
-
HyperTrackSdk.
|
|
123
|
-
type: '
|
|
124
|
-
value:
|
|
178
|
+
static async setIsAvailable(isAvailable) {
|
|
179
|
+
HyperTrackSdk.setIsAvailable({
|
|
180
|
+
type: 'isAvailable',
|
|
181
|
+
value: isAvailable
|
|
125
182
|
});
|
|
126
183
|
}
|
|
127
184
|
|
|
128
185
|
/**
|
|
129
|
-
* Sets the
|
|
130
|
-
*
|
|
186
|
+
* Sets the tracking intent for the device
|
|
187
|
+
*
|
|
188
|
+
* @param {boolean} isTracking
|
|
131
189
|
*/
|
|
132
|
-
|
|
133
|
-
HyperTrackSdk.
|
|
190
|
+
static async setIsTracking(isTracking) {
|
|
191
|
+
HyperTrackSdk.setIsTracking({
|
|
192
|
+
type: 'isTracking',
|
|
193
|
+
value: isTracking
|
|
194
|
+
});
|
|
134
195
|
}
|
|
135
196
|
|
|
136
197
|
/**
|
|
137
|
-
*
|
|
198
|
+
* Sets the metadata for the device
|
|
138
199
|
*
|
|
139
|
-
* @param {Object} data -
|
|
140
|
-
* @returns current location if success or LocationError if failure
|
|
200
|
+
* @param {Object} data - Metadata JSON
|
|
141
201
|
*/
|
|
202
|
+
static async setMetadata(data) {
|
|
203
|
+
HyperTrackSdk.setMetadata({
|
|
204
|
+
type: 'metadata',
|
|
205
|
+
value: data
|
|
206
|
+
});
|
|
207
|
+
}
|
|
142
208
|
|
|
143
209
|
/**
|
|
144
|
-
*
|
|
210
|
+
* Sets the name for the device
|
|
145
211
|
*
|
|
146
|
-
* @param {
|
|
147
|
-
* @param {Location} expectedLocation - Expected location
|
|
148
|
-
* @returns location with deviation if success or LocationError if failure
|
|
212
|
+
* @param {string} name
|
|
149
213
|
*/
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
if (args.length === 1 && typeof args[0] === 'object') {
|
|
156
|
-
return HyperTrackSdk.addGeotag({
|
|
157
|
-
data: args[0],
|
|
158
|
-
expectedLocation: undefined
|
|
159
|
-
}).then(locationResponse => {
|
|
160
|
-
return this.deserializeLocationResponse(locationResponse);
|
|
161
|
-
});
|
|
162
|
-
} else if (args.length === 2 && typeof args[0] === 'object' && this.isLocation(args[1])) {
|
|
163
|
-
let expectedLocation = args[1];
|
|
164
|
-
return HyperTrackSdk.addGeotag({
|
|
165
|
-
data: args[0],
|
|
166
|
-
expectedLocation: {
|
|
167
|
-
type: 'location',
|
|
168
|
-
value: {
|
|
169
|
-
latitude: expectedLocation.latitude,
|
|
170
|
-
longitude: expectedLocation.longitude
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
}).then(locationResponse => {
|
|
174
|
-
return this.deserializeLocationWithDeviationResponse(locationResponse);
|
|
175
|
-
});
|
|
176
|
-
} else {
|
|
177
|
-
throw new Error('Invalid arguments');
|
|
178
|
-
}
|
|
214
|
+
static async setName(name) {
|
|
215
|
+
HyperTrackSdk.setName({
|
|
216
|
+
type: 'name',
|
|
217
|
+
value: name
|
|
218
|
+
});
|
|
179
219
|
}
|
|
180
220
|
|
|
181
221
|
/**
|
|
@@ -195,12 +235,35 @@ class HyperTrack {
|
|
|
195
235
|
* subscription.remove()
|
|
196
236
|
* ```
|
|
197
237
|
*/
|
|
198
|
-
subscribeToErrors(listener) {
|
|
199
|
-
return EventEmitter.addListener(
|
|
238
|
+
static subscribeToErrors(listener) {
|
|
239
|
+
return EventEmitter.addListener(EVENT_ERRORS, rawErrors => {
|
|
200
240
|
listener(this.deserializeHyperTrackErrors(rawErrors));
|
|
201
241
|
});
|
|
202
242
|
}
|
|
203
243
|
|
|
244
|
+
/**
|
|
245
|
+
* Subscribe to availability changes
|
|
246
|
+
*
|
|
247
|
+
* @param listener
|
|
248
|
+
* @returns EmitterSubscription
|
|
249
|
+
* @example
|
|
250
|
+
* ```js
|
|
251
|
+
* const subscription = HyperTrack.subscribeToIsAvailable(isAvailable => {
|
|
252
|
+
* if (isAvailable) {
|
|
253
|
+
* // ... ready to go
|
|
254
|
+
* }
|
|
255
|
+
* })
|
|
256
|
+
*
|
|
257
|
+
* // later, to stop listening
|
|
258
|
+
* subscription.remove()
|
|
259
|
+
* ```
|
|
260
|
+
*/
|
|
261
|
+
static subscribeToIsAvailable(listener) {
|
|
262
|
+
return EventEmitter.addListener(EVENT_IS_AVAILABLE, isAvailable => {
|
|
263
|
+
listener(isAvailable.value);
|
|
264
|
+
});
|
|
265
|
+
}
|
|
266
|
+
|
|
204
267
|
/**
|
|
205
268
|
* Subscribe to tracking intent changes
|
|
206
269
|
*
|
|
@@ -208,7 +271,7 @@ class HyperTrack {
|
|
|
208
271
|
* @returns EmitterSubscription
|
|
209
272
|
* @example
|
|
210
273
|
* ```js
|
|
211
|
-
* const subscription = HyperTrack.
|
|
274
|
+
* const subscription = HyperTrack.subscribeToIsTracking(isTracking => {
|
|
212
275
|
* if (isTracking) {
|
|
213
276
|
* // ... ready to go
|
|
214
277
|
* }
|
|
@@ -218,42 +281,76 @@ class HyperTrack {
|
|
|
218
281
|
* subscription.remove()
|
|
219
282
|
* ```
|
|
220
283
|
*/
|
|
221
|
-
|
|
222
|
-
return EventEmitter.addListener(
|
|
284
|
+
static subscribeToIsTracking(listener) {
|
|
285
|
+
return EventEmitter.addListener(EVENT_IS_TRACKING, isTracking => {
|
|
223
286
|
listener(isTracking.value);
|
|
224
287
|
});
|
|
225
288
|
}
|
|
226
289
|
|
|
227
290
|
/**
|
|
228
|
-
* Subscribe to
|
|
291
|
+
* Subscribe to location changes
|
|
229
292
|
*
|
|
230
293
|
* @param listener
|
|
231
294
|
* @returns EmitterSubscription
|
|
232
295
|
* @example
|
|
233
296
|
* ```js
|
|
234
|
-
* const subscription = HyperTrack.
|
|
235
|
-
*
|
|
236
|
-
* // ... ready to go
|
|
237
|
-
* }
|
|
297
|
+
* const subscription = HyperTrack.subscribeToLocation(location => {
|
|
298
|
+
* ...
|
|
238
299
|
* })
|
|
239
300
|
*
|
|
240
301
|
* // later, to stop listening
|
|
241
302
|
* subscription.remove()
|
|
242
303
|
* ```
|
|
243
304
|
*/
|
|
244
|
-
|
|
245
|
-
return EventEmitter.addListener(
|
|
246
|
-
listener(
|
|
305
|
+
static subscribeToLocation(listener) {
|
|
306
|
+
return EventEmitter.addListener(EVENT_LOCATION, location => {
|
|
307
|
+
listener(this.deserializeLocationResponse(location));
|
|
247
308
|
});
|
|
248
309
|
}
|
|
249
310
|
|
|
250
311
|
/** @ignore */
|
|
251
|
-
deserializeHyperTrackErrors(errors) {
|
|
252
|
-
|
|
312
|
+
static deserializeHyperTrackErrors(errors) {
|
|
313
|
+
let res = errors.map(error => {
|
|
314
|
+
if (error.type != 'error') {
|
|
315
|
+
throw new Error('Invalid error type');
|
|
316
|
+
}
|
|
317
|
+
return Object.keys(_HyperTrackError.HyperTrackError).find(key => _HyperTrackError.HyperTrackError[key] === error.value);
|
|
318
|
+
});
|
|
319
|
+
return res;
|
|
253
320
|
}
|
|
254
321
|
|
|
255
322
|
/** @ignore */
|
|
256
|
-
|
|
323
|
+
static deserializeLocateResponse(response) {
|
|
324
|
+
switch (response.type) {
|
|
325
|
+
case 'success':
|
|
326
|
+
return {
|
|
327
|
+
type: 'success',
|
|
328
|
+
value: response.value.value
|
|
329
|
+
};
|
|
330
|
+
case 'failure':
|
|
331
|
+
return {
|
|
332
|
+
type: 'failure',
|
|
333
|
+
value: this.deserializeHyperTrackErrors(response.value)
|
|
334
|
+
};
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
|
|
338
|
+
/** @ignore */
|
|
339
|
+
static deserializeLocationError(locationError) {
|
|
340
|
+
switch (locationError.type) {
|
|
341
|
+
case 'notRunning':
|
|
342
|
+
case 'starting':
|
|
343
|
+
return locationError;
|
|
344
|
+
case 'errors':
|
|
345
|
+
return {
|
|
346
|
+
type: 'errors',
|
|
347
|
+
value: this.deserializeHyperTrackErrors(locationError.value)
|
|
348
|
+
};
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
/** @ignore */
|
|
353
|
+
static deserializeLocationResponse(response) {
|
|
257
354
|
switch (response.type) {
|
|
258
355
|
case 'success':
|
|
259
356
|
return {
|
|
@@ -269,7 +366,7 @@ class HyperTrack {
|
|
|
269
366
|
}
|
|
270
367
|
|
|
271
368
|
/** @ignore */
|
|
272
|
-
deserializeLocationWithDeviationResponse(response) {
|
|
369
|
+
static deserializeLocationWithDeviationResponse(response) {
|
|
273
370
|
switch (response.type) {
|
|
274
371
|
case 'success':
|
|
275
372
|
const locationWithDeviationInternal = response.value;
|
|
@@ -290,23 +387,26 @@ class HyperTrack {
|
|
|
290
387
|
}
|
|
291
388
|
|
|
292
389
|
/** @ignore */
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
390
|
+
static deserializeMetadata(metadata) {
|
|
391
|
+
if (metadata.type != 'metadata') {
|
|
392
|
+
throw new Error(`Invalid metadata: ${JSON.stringify(metadata)}`);
|
|
393
|
+
}
|
|
394
|
+
return metadata.value;
|
|
395
|
+
}
|
|
396
|
+
|
|
397
|
+
/** @ignore */
|
|
398
|
+
static deserializeName(name) {
|
|
399
|
+
if (name.type != 'name') {
|
|
400
|
+
throw new Error(`Invalid name: ${JSON.stringify(name)}`);
|
|
303
401
|
}
|
|
402
|
+
return name.value;
|
|
304
403
|
}
|
|
305
404
|
|
|
306
405
|
/** @ignore */
|
|
307
|
-
isLocation(obj) {
|
|
406
|
+
static isLocation(obj) {
|
|
308
407
|
return 'latitude' in obj && typeof obj.latitude == 'number' && 'longitude' in obj && typeof obj.longitude == 'number';
|
|
309
408
|
}
|
|
310
409
|
}
|
|
311
410
|
exports.default = HyperTrack;
|
|
411
|
+
_defineProperty(HyperTrack, "locateSubscription", void 0);
|
|
312
412
|
//# sourceMappingURL=HyperTrack.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_HyperTrackError","EVENT_TRACKING","EVENT_AVAILABILITY","EVENT_ERROR","LINKING_ERROR","Platform","select","ios","default","HyperTrackSdk","NativeModules","HyperTrackReactNativePlugin","Proxy","get","Error","EventEmitter","NativeEventEmitter","HyperTrack","constructor","initialize","publishableKey","sdkInitParams","arguments","length","undefined","initializeSdk","loggingEnabled","allowMockLocations","requireBackgroundTrackingPermission","automaticallyRequestPermissions","error","getDeviceId","then","deviceId","value","isAvailable","setAvailability","type","isTracking","sync","startTracking","stopTracking","getLocation","locationResponse","deserializeLocationResponse","setName","name","setMetadata","data","addGeotag","_len","args","Array","_key","expectedLocation","isLocation","latitude","longitude","deserializeLocationWithDeviationResponse","subscribeToErrors","listener","addListener","rawErrors","deserializeHyperTrackErrors","subscribeToTracking","subscribeToAvailability","errors","map","HyperTrackError","response","deserializeLocationError","locationWithDeviationInternal","locationInternal","location","deviation","locationError","obj","exports"],"sources":["HyperTrack.ts"],"sourcesContent":["import { NativeModules, Platform, NativeEventEmitter } from 'react-native';\nimport { HyperTrackError } from './data_types/HyperTrackError';\nimport type { IsAvailable } from './data_types/internal/IsAvailable';\nimport type { IsTracking } from './data_types/internal/IsTracking';\nimport type { Location } from './data_types/Location';\nimport type { LocationError } from './data_types/LocationError';\nimport type { SdkInitParams } from './data_types/SdkInitParams';\nimport type { DeviceId } from './data_types/internal/DeviceId';\nimport type { GeotagData } from './data_types/internal/GeotagData';\nimport type { DeviceName } from './data_types/internal/DeviceName';\nimport type { HyperTrackErrorInternal } from './data_types/internal/HyperTrackErrorInternal';\nimport type { Result } from './data_types/Result';\nimport type { LocationWithDeviation } from './data_types/LocationWithDeviation';\nimport type { LocationErrorInternal } from './data_types/internal/LocationErrorInternal';\nimport type { LocationInternal } from './data_types/internal/LocationInternal';\nimport type { LocationWithDeviationInternal } from './data_types/internal/LocationWithDeviationInternal';\n\nconst EVENT_TRACKING = 'onTrackingChanged';\nconst EVENT_AVAILABILITY = 'onAvailabilityChanged';\nconst EVENT_ERROR = 'onError';\n\nconst LINKING_ERROR =\n `The package 'hypertrack-sdk-react-native' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nconst HyperTrackSdk = NativeModules.HyperTrackReactNativePlugin\n ? NativeModules.HyperTrackReactNativePlugin\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst EventEmitter = new NativeEventEmitter(HyperTrackSdk);\n\nexport default class HyperTrack {\n private constructor() {\n return this;\n }\n\n /**\n * Creates an SDK instance\n *\n * @param publishableKey publishable key provided in HyperTrack’s dashboard setup page\n * @param sdkInitParams\n * @returns HyperTrack instance\n */\n static async initialize(\n publishableKey: string,\n sdkInitParams: SdkInitParams = {}\n ): Promise<HyperTrack> {\n try {\n await HyperTrackSdk.initializeSdk({\n publishableKey,\n loggingEnabled: sdkInitParams.loggingEnabled ?? false,\n allowMockLocations: sdkInitParams.allowMockLocations ?? false,\n requireBackgroundTrackingPermission:\n sdkInitParams.requireBackgroundTrackingPermission ?? false,\n automaticallyRequestPermissions:\n sdkInitParams.automaticallyRequestPermissions ?? true,\n });\n return new HyperTrack();\n } catch (error: any) {\n throw error;\n }\n }\n\n /**\n * Returns a string that is used to uniquely identify the device\n */\n getDeviceId(): Promise<string> {\n return HyperTrackSdk.getDeviceId().then(\n (deviceId: DeviceId) => deviceId.value\n );\n }\n\n /**\n * Reflects availability of the device for the Nearby search\n *\n * @returns true when is available or false when unavailable\n */\n isAvailable(): Promise<boolean> {\n return HyperTrackSdk.isAvailable().then(\n (isAvailable: IsAvailable) => isAvailable.value\n );\n }\n\n /**\n * Sets the availability of the device for the Nearby search\n *\n * @param availability true when is available or false when unavailable\n */\n setAvailability(isAvailable: boolean) {\n HyperTrackSdk.setAvailability({\n type: 'isAvailable',\n value: isAvailable,\n } as IsAvailable);\n }\n\n /**\n * Reflects the tracking intent for the device\n *\n * @return {boolean} Whether the user's movement data is getting tracked or not.\n */\n isTracking(): Promise<boolean> {\n return HyperTrackSdk.isTracking().then(\n (isTracking: IsTracking) => isTracking.value\n );\n }\n\n /**\n * Syncs the device state with the HyperTrack servers\n */\n sync() {\n HyperTrackSdk.sync();\n }\n\n /**\n * Expresses an intent to start location tracking for the device\n */\n startTracking() {\n HyperTrackSdk.startTracking();\n }\n\n /**\n * Stops location tracking immediately\n */\n stopTracking() {\n HyperTrackSdk.stopTracking();\n }\n\n /**\n * Reflects the current location of the user or an outage reason\n */\n getLocation(): Promise<Result<Location, LocationError>> {\n return HyperTrackSdk.getLocation().then(\n (locationResponse: Result<LocationInternal, LocationErrorInternal>) => {\n return this.deserializeLocationResponse(locationResponse);\n }\n );\n }\n\n /**\n * Sets the name for the device\n * @param {string} name\n */\n setName(name: string) {\n HyperTrackSdk.setName({\n type: 'deviceName',\n value: name,\n } as DeviceName);\n }\n\n /**\n * Sets the metadata for the device\n * @param {Object} data - Metadata JSON\n */\n setMetadata(data: Object) {\n HyperTrackSdk.setMetadata(data);\n }\n\n /**\n * Adds a new geotag\n *\n * @param {Object} data - Geotad data JSON\n * @returns current location if success or LocationError if failure\n */\n async addGeotag(data: Object): Promise<Result<Location, LocationError>>;\n\n /**\n * Adds a new geotag with expected location\n *\n * @param {Object} data - Geotad data JSON\n * @param {Location} expectedLocation - Expected location\n * @returns location with deviation if success or LocationError if failure\n */\n async addGeotag(\n data: Object,\n expectedLocation: Location\n ): Promise<Result<LocationWithDeviation, LocationError>>;\n\n async addGeotag(\n ...args: any[]\n ): Promise<Result<Location | LocationWithDeviation, LocationError>> {\n if (args.length === 1 && typeof args[0] === 'object') {\n return HyperTrackSdk.addGeotag({\n data: args[0],\n expectedLocation: undefined,\n } as GeotagData).then(\n (locationResponse: Result<LocationInternal, LocationErrorInternal>) => {\n return this.deserializeLocationResponse(locationResponse);\n }\n );\n } else if (\n args.length === 2 &&\n typeof args[0] === 'object' &&\n this.isLocation(args[1])\n ) {\n let expectedLocation = args[1] as Location;\n return HyperTrackSdk.addGeotag({\n data: args[0],\n expectedLocation: {\n type: 'location',\n value: {\n latitude: expectedLocation.latitude,\n longitude: expectedLocation.longitude,\n },\n } as LocationInternal,\n } as GeotagData).then(\n (\n locationResponse: Result<\n LocationWithDeviationInternal,\n LocationErrorInternal\n >\n ) => {\n return this.deserializeLocationWithDeviationResponse(\n locationResponse\n );\n }\n );\n } else {\n throw new Error('Invalid arguments');\n }\n }\n\n /**\n * Subscribe to tracking errors\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToErrors(errors => {\n * errors.forEach(error => {\n * // ... error\n * })\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n subscribeToErrors(listener: (errors: HyperTrackError[]) => void) {\n return EventEmitter.addListener(\n EVENT_ERROR,\n (rawErrors: HyperTrackErrorInternal[]) => {\n listener(this.deserializeHyperTrackErrors(rawErrors));\n }\n );\n }\n\n /**\n * Subscribe to tracking intent changes\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToTracking(isTracking => {\n * if (isTracking) {\n * // ... ready to go\n * }\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n subscribeToTracking(listener: (isTracking: boolean) => void) {\n return EventEmitter.addListener(\n EVENT_TRACKING,\n (isTracking: IsTracking) => {\n listener(isTracking.value);\n }\n );\n }\n\n /**\n * Subscribe to availability changes\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToAvailability(isAvailable => {\n * if (isAvailable) {\n * // ... ready to go\n * }\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n subscribeToAvailability(listener: (isAvailable: boolean) => void) {\n return EventEmitter.addListener(\n EVENT_AVAILABILITY,\n (isAvailable: IsAvailable) => {\n listener(isAvailable.value);\n }\n );\n }\n\n /** @ignore */\n private deserializeHyperTrackErrors(\n errors: HyperTrackErrorInternal[]\n ): HyperTrackError[] {\n return errors.map(\n (error: HyperTrackErrorInternal) =>\n HyperTrackError[error.value as keyof typeof HyperTrackError]\n );\n }\n\n /** @ignore */\n private deserializeLocationResponse(\n response: Result<LocationInternal, LocationErrorInternal>\n ): Result<Location, LocationError> {\n switch (response.type) {\n case 'success':\n return {\n type: 'success',\n value: response.value.value,\n };\n case 'failure':\n return {\n type: 'failure',\n value: this.deserializeLocationError(response.value),\n };\n }\n }\n\n /** @ignore */\n private deserializeLocationWithDeviationResponse(\n response: Result<LocationWithDeviationInternal, LocationErrorInternal>\n ): Result<LocationWithDeviation, LocationError> {\n switch (response.type) {\n case 'success':\n const locationWithDeviationInternal: LocationWithDeviationInternal =\n response.value;\n const locationInternal: LocationInternal =\n locationWithDeviationInternal.value.location;\n\n return {\n type: 'success',\n value: {\n location: locationInternal.value,\n deviation: locationWithDeviationInternal.value.deviation,\n } as LocationWithDeviation,\n };\n case 'failure':\n return {\n type: 'failure',\n value: this.deserializeLocationError(response.value),\n };\n }\n }\n\n /** @ignore */\n private deserializeLocationError(\n locationError: LocationErrorInternal\n ): LocationError {\n switch (locationError.type) {\n case 'notRunning':\n case 'starting':\n return locationError;\n case 'errors':\n return {\n type: 'errors',\n value: this.deserializeHyperTrackErrors(locationError.value),\n };\n }\n }\n\n /** @ignore */\n private isLocation(obj: Location): obj is Location {\n return (\n 'latitude' in obj &&\n typeof obj.latitude == 'number' &&\n 'longitude' in obj &&\n typeof obj.longitude == 'number'\n );\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_HyperTrackError","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","arg","_toPrimitive","String","input","hint","prim","Symbol","toPrimitive","undefined","res","call","TypeError","Number","EVENT_ERRORS","EVENT_IS_AVAILABLE","EVENT_IS_TRACKING","EVENT_LOCATE","EVENT_LOCATION","LINKING_ERROR","Platform","select","ios","default","HyperTrackSdk","NativeModules","HyperTrackReactNativePlugin","Proxy","get","Error","EventEmitter","NativeEventEmitter","HyperTrack","addGeotag","_len","arguments","length","args","Array","_key","data","expectedLocation","then","locationResponse","deserializeLocationResponse","isLocation","type","latitude","longitude","deserializeLocationWithDeviationResponse","getDeviceId","deviceId","getErrors","errors","deserializeHyperTrackErrors","getIsAvailable","isAvailable","getIsTracking","isTracking","getLocation","getMetadata","metadata","deserializeMetadata","getName","name","deserializeName","locate","callback","_this$locateSubscript","locateSubscription","remove","addListener","location","deserializeLocateResponse","setIsAvailable","setIsTracking","setMetadata","setName","subscribeToErrors","listener","rawErrors","subscribeToIsAvailable","subscribeToIsTracking","subscribeToLocation","map","error","keys","HyperTrackError","find","response","deserializeLocationError","locationError","locationWithDeviationInternal","locationInternal","deviation","JSON","stringify","exports"],"sources":["HyperTrack.ts"],"sourcesContent":["import {\n NativeModules,\n Platform,\n NativeEventEmitter,\n EmitterSubscription,\n} from 'react-native';\nimport { HyperTrackError } from './data_types/HyperTrackError';\nimport type { IsAvailable } from './data_types/internal/IsAvailable';\nimport type { IsTracking } from './data_types/internal/IsTracking';\nimport type { Location } from './data_types/Location';\nimport type { LocationError } from './data_types/LocationError';\nimport type { DeviceId } from './data_types/internal/DeviceId';\nimport type { GeotagData } from './data_types/internal/GeotagData';\nimport type { Name } from './data_types/internal/Name';\nimport type { HyperTrackErrorInternal } from './data_types/internal/HyperTrackErrorInternal';\nimport type { LocationWithDeviation } from './data_types/LocationWithDeviation';\nimport type { LocationErrorInternal } from './data_types/internal/LocationErrorInternal';\nimport type { Result } from './data_types/Result';\nimport type { LocationInternal } from './data_types/internal/LocationInternal';\nimport type { LocationWithDeviationInternal } from './data_types/internal/LocationWithDeviationInternal';\nimport type { Metadata } from './data_types/internal/Metadata';\n\nconst EVENT_ERRORS = 'errors';\nconst EVENT_IS_AVAILABLE = 'isAvailable';\nconst EVENT_IS_TRACKING = 'isTracking';\nconst EVENT_LOCATE = 'locate';\nconst EVENT_LOCATION = 'location';\n\nconst LINKING_ERROR =\n `The package 'hypertrack-sdk-react-native' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nconst HyperTrackSdk = NativeModules.HyperTrackReactNativePlugin\n ? NativeModules.HyperTrackReactNativePlugin\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\nconst EventEmitter = new NativeEventEmitter(HyperTrackSdk);\n\nexport default class HyperTrack {\n private static locateSubscription: EmitterSubscription | undefined;\n\n /**\n * Adds a new geotag\n *\n * @param {Object} data - Geotad data JSON\n * @returns current location if success or LocationError if failure\n */\n static async addGeotag(\n data: Object\n ): Promise<Result<Location, LocationError>>;\n\n /**\n * Adds a new geotag with expected location\n *\n * @param {Object} data - Geotad data JSON\n * @param {Location} expectedLocation - Expected location\n * @returns location with deviation if success or LocationError if failure\n */\n static async addGeotag(\n data: Object,\n expectedLocation: Location\n ): Promise<Result<LocationWithDeviation, LocationError>>;\n\n static async addGeotag(\n ...args: any[]\n ): Promise<Result<Location | LocationWithDeviation, LocationError>> {\n if (args.length === 1 && typeof args[0] === 'object') {\n return HyperTrackSdk.addGeotag({\n data: args[0],\n expectedLocation: undefined,\n } as GeotagData).then(\n (locationResponse: Result<LocationInternal, LocationErrorInternal>) => {\n return this.deserializeLocationResponse(locationResponse);\n }\n );\n } else if (\n args.length === 2 &&\n typeof args[0] === 'object' &&\n HyperTrack.isLocation(args[1])\n ) {\n let expectedLocation = args[1] as Location;\n return HyperTrackSdk.addGeotag({\n data: args[0],\n expectedLocation: {\n type: 'location',\n value: {\n latitude: expectedLocation.latitude,\n longitude: expectedLocation.longitude,\n },\n } as LocationInternal,\n } as GeotagData).then(\n (\n locationResponse: Result<\n LocationWithDeviationInternal,\n LocationErrorInternal\n >\n ) => {\n return this.deserializeLocationWithDeviationResponse(\n locationResponse\n );\n }\n );\n } else {\n throw new Error('Invalid arguments');\n }\n }\n\n /**\n * Returns a string that is used to uniquely identify the device\n *\n * @returns {string} Device ID\n */\n static async getDeviceId(): Promise<string> {\n return HyperTrackSdk.getDeviceId().then(\n (deviceId: DeviceId) => deviceId.value\n );\n }\n\n /**\n * Returns a list of errors that blocks SDK from tracking\n *\n * @returns {HyperTrackError[]} List of errors\n */\n static async getErrors(): Promise<HyperTrackError[]> {\n return HyperTrackSdk.getErrors().then(\n (errors: HyperTrackErrorInternal[]) => {\n return this.deserializeHyperTrackErrors(errors);\n }\n );\n }\n\n /**\n * Reflects availability of the device for the Nearby search\n *\n * @returns true when is available or false when unavailable\n */\n static async getIsAvailable(): Promise<boolean> {\n return HyperTrackSdk.getIsAvailable().then(\n (isAvailable: IsAvailable) => isAvailable.value\n );\n }\n\n /**\n * Reflects the tracking intent for the device\n *\n * @returns {boolean} Whether the user's movement data is getting tracked or not.\n */\n static async getIsTracking(): Promise<boolean> {\n return HyperTrackSdk.getIsTracking().then(\n (isTracking: IsTracking) => isTracking.value\n );\n }\n\n /**\n * Reflects the current location of the user or an outage reason\n */\n static async getLocation(): Promise<Result<Location, LocationError>> {\n return HyperTrackSdk.getLocation().then(\n (locationResponse: Result<LocationInternal, LocationErrorInternal>) => {\n return this.deserializeLocationResponse(locationResponse);\n }\n );\n }\n\n /**\n * Gets the metadata that is set for the device\n *\n * @returns {Object} Metadata JSON\n */\n static async getMetadata(): Promise<Object> {\n return HyperTrackSdk.getMetadata().then((metadata: Metadata) => {\n return this.deserializeMetadata(metadata);\n });\n }\n\n /**\n * Gets the name that is set for the device\n *\n * @returns {string} Device name\n */\n static async getName(): Promise<string> {\n return HyperTrackSdk.getName().then((name: Name) => {\n return this.deserializeName(name);\n });\n }\n\n /**\n * Requests one-time location update and returns the location once it is available, or error.\n *\n * Only one locate subscription can be active at a time. If you re-subscribe, the old EmitterSubscription\n * will be automaticaly removed.\n *\n * This method will start location tracking if called, and will stop it when the location is received or\n * the subscription is cancelled. If any other tracking intent is present (e.g. isAvailable is set to `true`),\n * the tracking will not be stopped.\n *\n * @param callback\n * @returns EmitterSubscription\n * @example ```js\n * const subscription = HyperTrack.locate(location => {\n * ...\n * })\n *\n * // to unsubscribe\n * subscription.remove()\n * ```\n */\n static locate(\n callback: (location: Result<Location, HyperTrackError[]>) => void\n ) {\n this.locateSubscription?.remove();\n this.locateSubscription = EventEmitter.addListener(\n EVENT_LOCATE,\n (location: Result<LocationInternal, HyperTrackErrorInternal[]>) => {\n callback(this.deserializeLocateResponse(location));\n }\n );\n HyperTrackSdk.locate();\n return this.locateSubscription;\n }\n\n /**\n * Sets the availability of the device for the Nearby search\n *\n * @param availability true when is available or false when unavailable\n */\n static async setIsAvailable(isAvailable: boolean) {\n HyperTrackSdk.setIsAvailable({\n type: 'isAvailable',\n value: isAvailable,\n } as IsAvailable);\n }\n\n /**\n * Sets the tracking intent for the device\n *\n * @param {boolean} isTracking\n */\n static async setIsTracking(isTracking: boolean): Promise<void> {\n HyperTrackSdk.setIsTracking({\n type: 'isTracking',\n value: isTracking,\n } as IsTracking);\n }\n\n /**\n * Sets the metadata for the device\n *\n * @param {Object} data - Metadata JSON\n */\n static async setMetadata(data: Object) {\n HyperTrackSdk.setMetadata({\n type: 'metadata',\n value: data,\n });\n }\n\n /**\n * Sets the name for the device\n *\n * @param {string} name\n */\n static async setName(name: string) {\n HyperTrackSdk.setName({\n type: 'name',\n value: name,\n } as Name);\n }\n\n /**\n * Subscribe to tracking errors\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToErrors(errors => {\n * errors.forEach(error => {\n * // ... error\n * })\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n static subscribeToErrors(\n listener: (errors: HyperTrackError[]) => void\n ): EmitterSubscription {\n return EventEmitter.addListener(\n EVENT_ERRORS,\n (rawErrors: HyperTrackErrorInternal[]) => {\n listener(this.deserializeHyperTrackErrors(rawErrors));\n }\n );\n }\n\n /**\n * Subscribe to availability changes\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToIsAvailable(isAvailable => {\n * if (isAvailable) {\n * // ... ready to go\n * }\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n static subscribeToIsAvailable(\n listener: (isAvailable: boolean) => void\n ): EmitterSubscription {\n return EventEmitter.addListener(\n EVENT_IS_AVAILABLE,\n (isAvailable: IsAvailable) => {\n listener(isAvailable.value);\n }\n );\n }\n\n /**\n * Subscribe to tracking intent changes\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToIsTracking(isTracking => {\n * if (isTracking) {\n * // ... ready to go\n * }\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n static subscribeToIsTracking(\n listener: (isTracking: boolean) => void\n ): EmitterSubscription {\n return EventEmitter.addListener(\n EVENT_IS_TRACKING,\n (isTracking: IsTracking) => {\n listener(isTracking.value);\n }\n );\n }\n\n /**\n * Subscribe to location changes\n *\n * @param listener\n * @returns EmitterSubscription\n * @example\n * ```js\n * const subscription = HyperTrack.subscribeToLocation(location => {\n * ...\n * })\n *\n * // later, to stop listening\n * subscription.remove()\n * ```\n */\n static subscribeToLocation(\n listener: (location: Result<Location, LocationError>) => void\n ) {\n return EventEmitter.addListener(\n EVENT_LOCATION,\n (location: Result<LocationInternal, LocationErrorInternal>) => {\n listener(this.deserializeLocationResponse(location));\n }\n );\n }\n\n /** @ignore */\n private static deserializeHyperTrackErrors(\n errors: HyperTrackErrorInternal[]\n ): HyperTrackError[] {\n let res = errors.map((error: HyperTrackErrorInternal) => {\n if (error.type != 'error') {\n throw new Error('Invalid error type');\n }\n return Object.keys(HyperTrackError).find(\n (key) =>\n HyperTrackError[key as keyof typeof HyperTrackError] === error.value\n ) as HyperTrackError;\n });\n return res;\n }\n\n /** @ignore */\n private static deserializeLocateResponse(\n response: Result<LocationInternal, HyperTrackErrorInternal[]>\n ): Result<Location, HyperTrackError[]> {\n switch (response.type) {\n case 'success':\n return {\n type: 'success',\n value: response.value.value,\n };\n case 'failure':\n return {\n type: 'failure',\n value: this.deserializeHyperTrackErrors(response.value),\n };\n }\n }\n\n /** @ignore */\n private static deserializeLocationError(\n locationError: LocationErrorInternal\n ): LocationError {\n switch (locationError.type) {\n case 'notRunning':\n case 'starting':\n return locationError;\n case 'errors':\n return {\n type: 'errors',\n value: this.deserializeHyperTrackErrors(locationError.value),\n };\n }\n }\n\n /** @ignore */\n private static deserializeLocationResponse(\n response: Result<LocationInternal, LocationErrorInternal>\n ): Result<Location, LocationError> {\n switch (response.type) {\n case 'success':\n return {\n type: 'success',\n value: response.value.value,\n };\n case 'failure':\n return {\n type: 'failure',\n value: this.deserializeLocationError(response.value),\n };\n }\n }\n\n /** @ignore */\n private static deserializeLocationWithDeviationResponse(\n response: Result<LocationWithDeviationInternal, LocationErrorInternal>\n ): Result<LocationWithDeviation, LocationError> {\n switch (response.type) {\n case 'success':\n const locationWithDeviationInternal: LocationWithDeviationInternal =\n response.value;\n const locationInternal: LocationInternal =\n locationWithDeviationInternal.value.location;\n\n return {\n type: 'success',\n value: {\n location: locationInternal.value,\n deviation: locationWithDeviationInternal.value.deviation,\n } as LocationWithDeviation,\n };\n case 'failure':\n return {\n type: 'failure',\n value: this.deserializeLocationError(response.value),\n };\n }\n }\n\n /** @ignore */\n private static deserializeMetadata(metadata: Metadata): Object {\n if (metadata.type != 'metadata') {\n throw new Error(`Invalid metadata: ${JSON.stringify(metadata)}`);\n }\n return metadata.value;\n }\n\n /** @ignore */\n private static deserializeName(name: Name): string {\n if (name.type != 'name') {\n throw new Error(`Invalid name: ${JSON.stringify(name)}`);\n }\n return name.value;\n }\n\n /** @ignore */\n private static isLocation(obj: Location): obj is Location {\n return (\n 'latitude' in obj &&\n typeof obj.latitude == 'number' &&\n 'longitude' in obj &&\n typeof obj.longitude == 'number'\n );\n }\n}\n"],"mappings":"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"}
|
|
@@ -7,24 +7,20 @@ exports.HyperTrackError = void 0;
|
|
|
7
7
|
// enum naming convention is ignored to make datatype sync
|
|
8
8
|
// across platforms easier
|
|
9
9
|
let HyperTrackError = /*#__PURE__*/function (HyperTrackError) {
|
|
10
|
-
HyperTrackError["gpsSignalLost"] = "gpsSignalLost";
|
|
11
|
-
HyperTrackError["locationMocked"] = "locationMocked";
|
|
12
|
-
HyperTrackError["locationPermissionsDenied"] = "locationPermissionsDenied";
|
|
13
|
-
HyperTrackError["locationPermissionsInsufficientForBackground"] = "locationPermissionsInsufficientForBackground";
|
|
14
|
-
HyperTrackError["locationPermissionsNotDetermined"] = "locationPermissionsNotDetermined";
|
|
15
|
-
HyperTrackError["locationPermissionsReducedAccuracy"] = "locationPermissionsReducedAccuracy";
|
|
16
|
-
HyperTrackError["locationPermissionsProvisional"] = "locationPermissionsProvisional";
|
|
17
|
-
HyperTrackError["locationPermissionsRestricted"] = "locationPermissionsRestricted";
|
|
18
|
-
HyperTrackError["locationServicesDisabled"] = "locationServicesDisabled";
|
|
19
|
-
HyperTrackError["locationServicesUnavailable"] = "locationServicesUnavailable";
|
|
20
|
-
HyperTrackError["motionActivityPermissionsNotDetermined"] = "motionActivityPermissionsNotDetermined";
|
|
21
|
-
HyperTrackError["motionActivityPermissionsDenied"] = "motionActivityPermissionsDenied";
|
|
22
|
-
HyperTrackError["motionActivityServicesDisabled"] = "motionActivityServicesDisabled";
|
|
23
|
-
HyperTrackError["motionActivityServicesUnavailable"] = "motionActivityServicesUnavailable";
|
|
24
|
-
HyperTrackError["motionActivityPermissionsRestricted"] = "motionActivityPermissionsRestricted";
|
|
25
|
-
HyperTrackError["networkConnectionUnavailable"] = "networkConnectionUnavailable";
|
|
26
|
-
HyperTrackError["invalidPublishableKey"] = "invalidPublishableKey";
|
|
27
10
|
HyperTrackError["blockedFromRunning"] = "blockedFromRunning";
|
|
11
|
+
HyperTrackError["invalidPublishableKey"] = "invalidPublishableKey";
|
|
12
|
+
HyperTrackError["locationMocked"] = "location.mocked";
|
|
13
|
+
HyperTrackError["locationServicesDisabled"] = "location.servicesDisabled";
|
|
14
|
+
HyperTrackError["locationServicesUnavailable"] = "location.servicesUnavailable";
|
|
15
|
+
HyperTrackError["locationSignalLost"] = "location.signalLost";
|
|
16
|
+
HyperTrackError["noExemptionFromBackgroundStartRestrictions"] = "noExemptionFromBackgroundStartRestrictions";
|
|
17
|
+
HyperTrackError["permissionsLocationDenied"] = "permissions.location.denied";
|
|
18
|
+
HyperTrackError["permissionsLocationInsufficientForBackground"] = "permissions.location.insufficientForBackground";
|
|
19
|
+
HyperTrackError["permissionsLocationNotDetermined"] = "permissions.location.notDetermined";
|
|
20
|
+
HyperTrackError["permissionsLocationProvisional"] = "permissions.location.provisional";
|
|
21
|
+
HyperTrackError["permissionsLocationReducedAccuracy"] = "permissions.location.reducedAccuracy";
|
|
22
|
+
HyperTrackError["permissionsLocationRestricted"] = "permissions.location.restricted";
|
|
23
|
+
HyperTrackError["permissionsNotificationsDenied"] = "permissions.notifications.denied";
|
|
28
24
|
return HyperTrackError;
|
|
29
25
|
}({});
|
|
30
26
|
exports.HyperTrackError = HyperTrackError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HyperTrackError","exports"],"sources":["HyperTrackError.ts"],"sourcesContent":["// enum naming convention is ignored to make datatype sync\n// across platforms easier\nexport enum HyperTrackError {\n
|
|
1
|
+
{"version":3,"names":["HyperTrackError","exports"],"sources":["HyperTrackError.ts"],"sourcesContent":["// enum naming convention is ignored to make datatype sync\n// across platforms easier\nexport enum HyperTrackError {\n /**\n * The SDK was remotely blocked from running.\n */\n blockedFromRunning = 'blockedFromRunning',\n\n /**\n * The publishable key is invalid.\n */\n invalidPublishableKey = 'invalidPublishableKey',\n\n /**\n * The user enabled mock location app while mocking locations is prohibited.\n */\n locationMocked = 'location.mocked',\n\n /**\n * The user disabled location services systemwide.\n */\n locationServicesDisabled = 'location.servicesDisabled',\n\n /**\n * [Android only] The device doesn't have location services.\n */\n locationServicesUnavailable = 'location.servicesUnavailable',\n\n /**\n * GPS satellites are not in view.\n */\n locationSignalLost = 'location.signalLost',\n\n /**\n * [Android only] The SDK wasn't able to start tracking because of the limitations imposed by the OS.\n * The exempt from background execution conditions weren't met.\n * {@link https://developer.android.com/guide/components/foreground-services#background-start-restriction-exemptions}\n */\n noExemptionFromBackgroundStartRestrictions = 'noExemptionFromBackgroundStartRestrictions',\n\n /**\n * The user denied location permissions.\n */\n permissionsLocationDenied = 'permissions.location.denied',\n\n /**\n * Can’t start tracking in background with When In Use location permissions.\n * SDK will automatically start tracking when app will return to foreground.\n */\n permissionsLocationInsufficientForBackground = 'permissions.location.insufficientForBackground',\n\n /**\n * [iOS only] The user has not chosen whether the app can use location services.\n */\n permissionsLocationNotDetermined = 'permissions.location.notDetermined',\n\n /**\n * [iOS only] The app is in Provisional Always authorization state, which stops sending locations when app is in background.\n */\n permissionsLocationProvisional = 'permissions.location.provisional',\n\n /**\n * The user didn't grant precise location permissions or downgraded permissions to imprecise.\n */\n permissionsLocationReducedAccuracy = 'permissions.location.reducedAccuracy',\n\n /**\n * [iOS only] The app is not authorized to use location services.\n */\n permissionsLocationRestricted = 'permissions.location.restricted',\n\n /**\n * [Android only] The user denied notification permissions needed to display a persistent notification\n * needed for foreground location tracking.\n */\n permissionsNotificationsDenied = 'permissions.notifications.denied',\n}\n"],"mappings":";;;;;;AAAA;AACA;AAAA,IACYA,eAAe,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAAAC,OAAA,CAAAD,eAAA,GAAAA,eAAA"}
|