react-native-move-sdk 0.1.4 → 0.2.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.
@@ -2,74 +2,43 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
2
2
 
3
3
  import { NativeModules, NativeEventEmitter, Platform } from 'react-native';
4
4
  const {
5
- DolphinSdk: NativeMoveSdk
5
+ MoveSdk: NativeMoveSdk
6
6
  } = NativeModules;
7
7
  const eventEmitter = new NativeEventEmitter(NativeMoveSdk);
8
8
  export default class MoveSdk {
9
- static sdkStateFromNative(nativeSdkState) {
10
- var _stateString;
11
-
12
- let stateString = nativeSdkState === null || nativeSdkState === void 0 ? void 0 : nativeSdkState.toLowerCase();
13
-
14
- if ((_stateString = stateString) !== null && _stateString !== void 0 && _stateString.includes('(')) {
15
- var _stateString2, _stateString3;
16
-
17
- stateString = (_stateString2 = stateString) === null || _stateString2 === void 0 ? void 0 : _stateString2.substring(0, (_stateString3 = stateString) === null || _stateString3 === void 0 ? void 0 : _stateString3.indexOf('(')).toLowerCase();
9
+ static sdkStateFromNative(sdkState) {
10
+ if ([MoveSdk.UNINITIALIZED, MoveSdk.READY, MoveSdk.RUNNING, MoveSdk.UNINITIALIZED].includes(sdkState)) {
11
+ return sdkState;
18
12
  }
19
13
 
20
- switch (stateString) {
21
- case 'uninitialized':
22
- return MoveSdk.UNINITIALIZED;
23
-
24
- case 'ready':
25
- return MoveSdk.READY;
26
-
27
- case 'running':
28
- return MoveSdk.RUNNING;
29
-
30
- case 'error':
31
- return MoveSdk.ERROR;
32
-
33
- default:
34
- return null;
35
- }
14
+ return MoveSdk.UNINITIALIZED;
36
15
  }
37
16
 
38
17
  static tripStateFromNative(nativeTripState) {
39
- const state = nativeTripState === null || nativeTripState === void 0 ? void 0 : nativeTripState.toLowerCase();
40
-
41
- if ([MoveSdk.UNKNOWN, MoveSdk.DRIVING, MoveSdk.HALT, MoveSdk.IDLE, MoveSdk.IGNORED].includes(state)) {
42
- return state;
18
+ if ([MoveSdk.UNKNOWN, MoveSdk.DRIVING, MoveSdk.HALT, MoveSdk.IDLE, MoveSdk.IGNORED].includes(nativeTripState)) {
19
+ return nativeTripState;
43
20
  }
44
21
 
45
- return null;
22
+ return MoveSdk.UNKNOWN;
46
23
  }
47
24
 
48
25
  static authStateFromNative(nativeAuthState) {
49
- const state = nativeAuthState === null || nativeAuthState === void 0 ? void 0 : nativeAuthState.toLowerCase();
50
-
51
- if ([MoveSdk.AUTH_VALID, MoveSdk.AUTH_EXPIRED].includes(state)) {
52
- return state;
26
+ if ([MoveSdk.AUTH_VALID, MoveSdk.AUTH_EXPIRED].includes(nativeAuthState)) {
27
+ return nativeAuthState;
53
28
  }
54
29
 
55
- return null;
30
+ return MoveSdk.AUTH_UNKNOWN;
56
31
  }
57
32
 
58
- static configurationErrorFromNative(nativeInitError) {
59
- const state = nativeInitError === null || nativeInitError === void 0 ? void 0 : nativeInitError.toLowerCase();
60
- return state;
61
- }
62
-
63
- static initialize(config, auth, android) {
33
+ static async setup(config, auth, android) {
64
34
  const {
65
35
  timelineDetectionServices,
66
36
  drivingServices,
67
- walkingServices,
68
- otherServices
37
+ walkingServices
69
38
  } = config;
70
39
  const {
71
- contractId,
72
- productId,
40
+ userId,
41
+ projectId,
73
42
  accessToken,
74
43
  refreshToken
75
44
  } = auth;
@@ -77,8 +46,7 @@ export default class MoveSdk {
77
46
 
78
47
  if (Platform.OS === 'android') {
79
48
  const {
80
- notifications,
81
- allowMockLocations
49
+ notifications
82
50
  } = android;
83
51
  const {
84
52
  tripNotification,
@@ -89,14 +57,22 @@ export default class MoveSdk {
89
57
  throw new Error('MOVE SDK needs notification configuration for Android');
90
58
  }
91
59
 
92
- platformParams = [recognitionNotification.title, recognitionNotification.text, recognitionNotification.channel.id, recognitionNotification.channel.name, recognitionNotification.channel.description, tripNotification.title, tripNotification.text, tripNotification.channel.id, tripNotification.channel.name, tripNotification.channel.description, allowMockLocations];
60
+ platformParams = [recognitionNotification.title, recognitionNotification.text, recognitionNotification.channel.id, recognitionNotification.channel.name, recognitionNotification.channel.description, tripNotification.title, tripNotification.text, tripNotification.channel.id, tripNotification.channel.name, tripNotification.channel.description];
93
61
  }
94
62
 
95
- NativeMoveSdk.initialize(contractId, accessToken, refreshToken, productId, // Config
96
- timelineDetectionServices, drivingServices, walkingServices, otherServices, // Platform config
97
- ...platformParams).catch(e => {
98
- throw new Error(`Initialization failed, Exception occured with message ${e.message}`);
99
- });
63
+ return await NativeMoveSdk.setup(userId, accessToken, refreshToken, projectId, // Config
64
+ timelineDetectionServices, drivingServices, walkingServices, // Platform config
65
+ ...platformParams);
66
+ }
67
+
68
+ static allowMockLocations(allowMockLocations) {
69
+ NativeMoveSdk.allowMockLocations(allowMockLocations);
70
+ }
71
+ /* Deprecated */
72
+
73
+
74
+ static init() {
75
+ NativeMoveSdk.init();
100
76
  }
101
77
 
102
78
  static resolveError() {
@@ -105,18 +81,22 @@ export default class MoveSdk {
105
81
 
106
82
  static updateAuth(auth) {
107
83
  const {
108
- contractId,
109
- productId,
84
+ userId,
85
+ projectId,
110
86
  accessToken,
111
87
  refreshToken
112
88
  } = auth;
113
- NativeMoveSdk.updateAuth(contractId, accessToken, refreshToken, productId);
89
+ NativeMoveSdk.updateAuth(userId, accessToken, refreshToken, projectId);
114
90
  }
115
91
 
116
92
  static startAutomaticDetection() {
117
93
  NativeMoveSdk.startAutomaticDetection();
118
94
  }
119
95
 
96
+ static stopAutomaticDetection() {
97
+ NativeMoveSdk.stopAutomaticDetection();
98
+ }
99
+
120
100
  static forceTripRecognition() {
121
101
  NativeMoveSdk.forceTripRecognition();
122
102
  }
@@ -137,57 +117,53 @@ export default class MoveSdk {
137
117
  }
138
118
  }
139
119
 
140
- static stopAutomaticDetection() {
141
- NativeMoveSdk.stopAutomaticDetection();
120
+ static async synchronizeUserData() {
121
+ return await NativeMoveSdk.synchronizeUserData();
142
122
  }
143
123
 
144
- static synchronizeUserData() {
145
- return new Promise((resolve, _reject) => {
146
- NativeMoveSdk.synchronizeUserData().then(value => resolve(value));
147
- });
124
+ static async getAuthState() {
125
+ const authState = await NativeMoveSdk.getAuthState();
126
+ return MoveSdk.authStateFromNative(authState);
148
127
  }
149
128
 
150
- static shutdown() {
151
- NativeMoveSdk.shutdown();
129
+ static async getState() {
130
+ const state = await NativeMoveSdk.getState();
131
+ return MoveSdk.sdkStateFromNative(state);
152
132
  }
153
133
 
154
- static getAuthState() {
155
- return new Promise((resolve, _reject) => {
156
- NativeMoveSdk.getAuthState().then(nativeState => resolve(MoveSdk.authStateFromNative(nativeState)));
157
- });
134
+ static async getTripState() {
135
+ const tripState = await NativeMoveSdk.getTripState();
136
+ return MoveSdk.tripStateFromNative(tripState);
158
137
  }
159
138
 
160
- static getState() {
161
- return new Promise((resolve, _reject) => {
162
- NativeMoveSdk.getState().then(nativeState => resolve(MoveSdk.sdkStateFromNative(nativeState)));
163
- });
139
+ static async getErrors() {
140
+ return await NativeMoveSdk.getErrors();
164
141
  }
165
142
 
166
- static getTripState() {
167
- return new Promise((resolve, _reject) => {
168
- NativeMoveSdk.getTripState().then(nativeState => resolve(MoveSdk.tripStateFromNative(nativeState)));
169
- });
143
+ static async getWarnings() {
144
+ return await NativeMoveSdk.getWarnings();
170
145
  }
171
146
 
172
- static addTripStateListener(tripStateChanged) {
173
- return eventEmitter.addListener('DolphinSdk-TripState', event => tripStateChanged(MoveSdk.tripStateFromNative(event.state)));
147
+ static async initiateAssistanceCall() {
148
+ return await NativeMoveSdk.initiateAssistanceCall();
174
149
  }
175
150
 
176
- static addSDKStateListener(sdkStateChanged) {
177
- return eventEmitter.addListener('DolphinSdk-State', event => {
178
- const transformedEvent = { ...event,
179
- state: MoveSdk.sdkStateFromNative(event.state)
180
- };
181
- sdkStateChanged(transformedEvent);
182
- });
151
+ static setAssistanceMetaData(data) {
152
+ NativeMoveSdk.setAssistanceMetaData(data);
153
+ }
154
+
155
+ static addTripStateListener(tripStateChanged) {
156
+ return eventEmitter.addListener('MOVE_SDK_TRIP_STATE', event => tripStateChanged(MoveSdk.tripStateFromNative(event.state)));
183
157
  }
184
158
 
185
- static addInitErrorListener(initErrorReceived) {
186
- return eventEmitter.addListener('DolphinSdk-InitError', event => initErrorReceived(MoveSdk.configurationErrorFromNative(event.error)));
159
+ static addSdkStateListener(sdkStateChanged) {
160
+ return eventEmitter.addListener('MOVE_SDK_STATE', event => {
161
+ sdkStateChanged(MoveSdk.sdkStateFromNative(event.state));
162
+ });
187
163
  }
188
164
 
189
165
  static addAuthStateListener(authStateChanged) {
190
- return eventEmitter.addListener('DolphinSdk-AuthState', event => {
166
+ return eventEmitter.addListener('MOVE_SDK_AUTH_STATE', event => {
191
167
  const transformedEvent = { ...event,
192
168
  state: MoveSdk.authStateFromNative(event.state)
193
169
  };
@@ -195,8 +171,20 @@ export default class MoveSdk {
195
171
  });
196
172
  }
197
173
 
174
+ static addErrorsListener(errorsReceived) {
175
+ return eventEmitter.addListener('MOVE_SDK_ERRORS', event => {
176
+ errorsReceived(event.errors);
177
+ });
178
+ }
179
+
180
+ static addWarningsListener(warningsReceived) {
181
+ return eventEmitter.addListener('MOVE_SDK_WARNINGS', event => {
182
+ warningsReceived(event.warnings);
183
+ });
184
+ }
185
+
198
186
  static addAppEventListener(appEventReceived) {
199
- return eventEmitter.addListener('DolphinSdk-AppEvent', event => {
187
+ return eventEmitter.addListener('MOVE_SDK_APP_EVENT', event => {
200
188
  appEventReceived(event);
201
189
  });
202
190
  }
@@ -211,13 +199,23 @@ export default class MoveSdk {
211
199
 
212
200
  static ignoreCurrentTrip() {
213
201
  NativeMoveSdk.ignoreCurrentTrip();
202
+ }
203
+
204
+ static requestMotionPermission() {
205
+ if (Platform.OS === 'ios') {
206
+ NativeMoveSdk.requestMotionPermission();
207
+ } else {
208
+ console.warn('MoveSdk.requestMotionPermission() is iOS only.');
209
+ }
210
+ }
211
+
212
+ static shutdown() {
213
+ NativeMoveSdk.shutdown();
214
214
  } // **** PERMISSIONS MODULE START *****
215
215
 
216
216
 
217
- static canDrawOverlays() {
218
- return new Promise((resolve, _reject) => {
219
- NativeMoveSdk.canDrawOverlays().then(result => resolve(result));
220
- });
217
+ static async canDrawOverlays() {
218
+ return await NativeMoveSdk.isAppIgnoringBatteryOptimization();
221
219
  }
222
220
 
223
221
  static requestDrawOverlaysPermission() {
@@ -228,10 +226,8 @@ export default class MoveSdk {
228
226
  }
229
227
  }
230
228
 
231
- static isAppIgnoringBatteryOptimization() {
232
- return new Promise((resolve, _reject) => {
233
- NativeMoveSdk.isAppIgnoringBatteryOptimization().then(result => resolve(result));
234
- });
229
+ static async isAppIgnoringBatteryOptimization() {
230
+ return await NativeMoveSdk.isAppIgnoringBatteryOptimization();
235
231
  }
236
232
 
237
233
  static requestAppIgnoringBatteryOptimization() {
@@ -245,27 +241,25 @@ export default class MoveSdk {
245
241
 
246
242
  }
247
243
 
248
- _defineProperty(MoveSdk, "ERROR", 'error');
249
-
250
- _defineProperty(MoveSdk, "READY", 'ready');
244
+ _defineProperty(MoveSdk, "READY", 'READY');
251
245
 
252
- _defineProperty(MoveSdk, "RUNNING", 'running');
246
+ _defineProperty(MoveSdk, "RUNNING", 'RUNNING');
253
247
 
254
- _defineProperty(MoveSdk, "UNINITIALIZED", 'uninitialized');
248
+ _defineProperty(MoveSdk, "UNINITIALIZED", 'UNINITIALIZED');
255
249
 
256
- _defineProperty(MoveSdk, "AUTH_INVALID", 'authinvalid');
250
+ _defineProperty(MoveSdk, "AUTH_EXPIRED", 'EXPIRED');
257
251
 
258
- _defineProperty(MoveSdk, "AUTH_EXPIRED", 'expired');
252
+ _defineProperty(MoveSdk, "AUTH_VALID", 'VALID');
259
253
 
260
- _defineProperty(MoveSdk, "AUTH_VALID", 'valid');
254
+ _defineProperty(MoveSdk, "AUTH_UNKNOWN", 'UNKNOWN');
261
255
 
262
- _defineProperty(MoveSdk, "UNKNOWN", 'unknown');
256
+ _defineProperty(MoveSdk, "UNKNOWN", 'UNKNOWN');
263
257
 
264
- _defineProperty(MoveSdk, "DRIVING", 'driving');
258
+ _defineProperty(MoveSdk, "DRIVING", 'DRIVING');
265
259
 
266
- _defineProperty(MoveSdk, "HALT", 'halt');
260
+ _defineProperty(MoveSdk, "HALT", 'HALT');
267
261
 
268
- _defineProperty(MoveSdk, "IDLE", 'idle');
262
+ _defineProperty(MoveSdk, "IDLE", 'IDLE');
269
263
 
270
- _defineProperty(MoveSdk, "IGNORED", 'ignored');
264
+ _defineProperty(MoveSdk, "IGNORED", 'IGNORED');
271
265
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["index.ts"],"names":["NativeModules","NativeEventEmitter","Platform","DolphinSdk","NativeMoveSdk","eventEmitter","MoveSdk","sdkStateFromNative","nativeSdkState","stateString","toLowerCase","includes","substring","indexOf","UNINITIALIZED","READY","RUNNING","ERROR","tripStateFromNative","nativeTripState","state","UNKNOWN","DRIVING","HALT","IDLE","IGNORED","authStateFromNative","nativeAuthState","AUTH_VALID","AUTH_EXPIRED","configurationErrorFromNative","nativeInitError","initialize","config","auth","android","timelineDetectionServices","drivingServices","walkingServices","otherServices","contractId","productId","accessToken","refreshToken","platformParams","OS","notifications","allowMockLocations","tripNotification","recognitionNotification","Error","title","text","channel","id","name","description","catch","e","message","resolveError","updateAuth","startAutomaticDetection","forceTripRecognition","keepInForeground","enabled","console","warn","keepActive","stopAutomaticDetection","synchronizeUserData","Promise","resolve","_reject","then","value","shutdown","getAuthState","nativeState","getState","getTripState","addTripStateListener","tripStateChanged","addListener","event","addSDKStateListener","sdkStateChanged","transformedEvent","addInitErrorListener","initErrorReceived","error","addAuthStateListener","authStateChanged","addAppEventListener","appEventReceived","version","getConstants","finishCurrentTrip","ignoreCurrentTrip","canDrawOverlays","result","requestDrawOverlaysPermission","isAppIgnoringBatteryOptimization","requestAppIgnoringBatteryOptimization"],"mappings":"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","sourcesContent":["import {\n NativeModules,\n NativeEventEmitter,\n Platform,\n EmitterSubscription,\n} from 'react-native';\n\nexport type AndroidSdkState = 'Error' | 'Uninitialised' | 'Ready' | 'Running';\nexport type SdkState = 'error' | 'uninitialized' | 'ready' | 'running';\n\nexport type NativeSdkState = AndroidSdkState | SdkState;\n\nexport type TripState = 'unknown' | 'driving' | 'halt' | 'idle' | 'ignored';\nexport type AuthState = 'unknown' | 'valid' | 'expired';\n\nexport type AndroidTripState =\n | 'UNKNOWN'\n | 'DRIVING'\n | 'HALT'\n | 'IDLE'\n | 'IGNORED';\n\nexport type NativeTripState = AndroidTripState | TripState;\n\nexport type AndroidAuthState = 'UNKNOWN' | 'VALID' | 'EXPIRED';\nexport type IosAuthState = 'unknown' | 'valid' | 'expired';\nexport type NativeAuthState = AndroidAuthState | IosAuthState;\n\nexport type DrivingService = 'DistractionFreeDriving' | 'DrivingBehaviour';\nexport type WalkingService = 'Location';\nexport type OtherService = 'PointsOfInterest';\nexport type TimelineDetectionService =\n | 'DRIVING'\n | 'BICYCLE'\n | 'WALKING'\n | 'PUBLIC_TRANSPORT';\nexport type MoveSdkConfig = {\n timelineDetectionServices: TimelineDetectionService[];\n drivingServices: DrivingService[];\n walkingServices: WalkingService[];\n otherServices: OtherService[];\n};\n\nexport type MoveSdkAuth = {\n contractId: string;\n accessToken: string;\n refreshToken: string;\n productId: number;\n};\n\nexport type NotificationConfig = {\n title: string;\n text: string;\n channel: { id: string; name: string; description: string };\n};\n\nexport type MoveSdkAndroidConfig = {\n notifications: {\n recognitionNotification: NotificationConfig;\n tripNotification: NotificationConfig;\n };\n allowMockLocations: boolean;\n};\n\nexport type ListenerSubscription = EmitterSubscription;\n\nexport type ConfigurationError =\n | 'authinvalid'\n | 'configmismatch'\n | 'serviceunreachable';\n\nexport type IosConfigurationError =\n | 'serviceUnreachable'\n | 'authInvalid'\n | 'configMismatch';\n\nexport type AndroidConfigurationError =\n | 'ServiceUnreachable'\n | 'AuthInvalid'\n | 'ConfigMismatch';\n\nexport type NativeConfigurationError =\n | IosConfigurationError\n | AndroidConfigurationError;\n\nexport type AuthStateEvent = {\n state: AuthState;\n accessToken?: string;\n refreshToken?: string;\n};\n\nconst { DolphinSdk: NativeMoveSdk } = NativeModules;\nconst eventEmitter = new NativeEventEmitter(NativeMoveSdk);\n\nexport default class MoveSdk {\n static ERROR: SdkState = 'error';\n static READY: SdkState = 'ready';\n static RUNNING: SdkState = 'running';\n static UNINITIALIZED: SdkState = 'uninitialized';\n\n static AUTH_INVALID: ConfigurationError = 'authinvalid';\n static AUTH_EXPIRED: AuthState = 'expired';\n static AUTH_VALID: AuthState = 'valid';\n\n static UNKNOWN: TripState = 'unknown';\n static DRIVING: TripState = 'driving';\n static HALT: TripState = 'halt';\n static IDLE: TripState = 'idle';\n static IGNORED: TripState = 'ignored';\n\n static sdkStateFromNative(nativeSdkState: NativeSdkState): SdkState | null {\n let stateString = nativeSdkState?.toLowerCase() as SdkState;\n\n if (stateString?.includes('(')) {\n stateString = stateString\n ?.substring(0, stateString?.indexOf('('))\n .toLowerCase() as SdkState;\n }\n\n switch (stateString) {\n case 'uninitialized':\n return MoveSdk.UNINITIALIZED;\n\n case 'ready':\n return MoveSdk.READY;\n\n case 'running':\n return MoveSdk.RUNNING;\n\n case 'error':\n return MoveSdk.ERROR;\n default:\n return null;\n }\n }\n\n static tripStateFromNative(\n nativeTripState: NativeTripState\n ): TripState | null {\n const state = nativeTripState?.toLowerCase() as TripState;\n\n if (\n [\n MoveSdk.UNKNOWN,\n MoveSdk.DRIVING,\n MoveSdk.HALT,\n MoveSdk.IDLE,\n MoveSdk.IGNORED,\n ].includes(state)\n ) {\n return state;\n }\n\n return null;\n }\n\n static authStateFromNative(\n nativeAuthState: NativeAuthState\n ): AuthState | null {\n const state = nativeAuthState?.toLowerCase() as AuthState;\n\n if ([MoveSdk.AUTH_VALID, MoveSdk.AUTH_EXPIRED].includes(state)) {\n return state;\n }\n\n return null;\n }\n\n static configurationErrorFromNative(\n nativeInitError: NativeConfigurationError\n ) {\n const state = nativeInitError?.toLowerCase() as ConfigurationError;\n return state;\n }\n\n static initialize(\n config: MoveSdkConfig,\n auth: MoveSdkAuth,\n android: MoveSdkAndroidConfig\n ) {\n const {\n timelineDetectionServices,\n drivingServices,\n walkingServices,\n otherServices,\n } = config;\n\n const { contractId, productId, accessToken, refreshToken } = auth;\n\n let platformParams: Array<string | boolean> = [];\n if (Platform.OS === 'android') {\n const { notifications, allowMockLocations } = android;\n\n const { tripNotification, recognitionNotification } = notifications;\n\n if (!tripNotification || !recognitionNotification) {\n throw new Error(\n 'MOVE SDK needs notification configuration for Android'\n );\n }\n\n platformParams = [\n recognitionNotification.title,\n recognitionNotification.text,\n recognitionNotification.channel.id,\n recognitionNotification.channel.name,\n recognitionNotification.channel.description,\n tripNotification.title,\n tripNotification.text,\n tripNotification.channel.id,\n tripNotification.channel.name,\n tripNotification.channel.description,\n allowMockLocations,\n ];\n }\n\n NativeMoveSdk.initialize(\n contractId,\n accessToken,\n refreshToken,\n productId,\n // Config\n timelineDetectionServices,\n drivingServices,\n walkingServices,\n otherServices,\n // Platform config\n ...platformParams\n ).catch((e) => {\n throw new Error(\n `Initialization failed, Exception occured with message ${e.message}`\n );\n });\n }\n\n static resolveError() {\n NativeMoveSdk.resolveError();\n }\n\n static updateAuth(auth: MoveSdkAuth) {\n const { contractId, productId, accessToken, refreshToken } = auth;\n NativeMoveSdk.updateAuth(contractId, accessToken, refreshToken, productId);\n }\n\n static startAutomaticDetection() {\n NativeMoveSdk.startAutomaticDetection();\n }\n\n static forceTripRecognition() {\n NativeMoveSdk.forceTripRecognition();\n }\n\n static keepInForeground(enabled: boolean) {\n if (Platform.OS === 'android') {\n NativeMoveSdk.keepInForeground(enabled);\n } else {\n console.warn('MoveSdk.keepInForeground() is Android OS only.');\n }\n }\n\n static keepActive(enabled: boolean) {\n if (Platform.OS === 'android') {\n NativeMoveSdk.keepActive(enabled);\n } else {\n console.warn('MoveSdk.keepActive() is Android OS only.');\n }\n }\n\n static stopAutomaticDetection() {\n NativeMoveSdk.stopAutomaticDetection();\n }\n\n static synchronizeUserData(): Promise<boolean> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.synchronizeUserData().then((value: boolean) =>\n resolve(value)\n );\n });\n }\n\n static shutdown() {\n NativeMoveSdk.shutdown();\n }\n\n static getAuthState(): Promise<AuthState | null> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.getAuthState().then((nativeState: NativeAuthState) =>\n resolve(MoveSdk.authStateFromNative(nativeState))\n );\n });\n }\n\n static getState(): Promise<SdkState | null> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.getState().then((nativeState: NativeSdkState) =>\n resolve(MoveSdk.sdkStateFromNative(nativeState))\n );\n });\n }\n\n static getTripState(): Promise<TripState | null> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.getTripState().then((nativeState: NativeTripState) =>\n resolve(MoveSdk.tripStateFromNative(nativeState))\n );\n });\n }\n\n static addTripStateListener(\n tripStateChanged: (state: TripState | null) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('DolphinSdk-TripState', (event) =>\n tripStateChanged(MoveSdk.tripStateFromNative(event.state))\n );\n }\n\n static addSDKStateListener(\n sdkStateChanged: (event: { state: SdkState | null }) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('DolphinSdk-State', (event) => {\n const transformedEvent = {\n ...event,\n state: MoveSdk.sdkStateFromNative(event.state),\n };\n\n sdkStateChanged(transformedEvent);\n });\n }\n\n static addInitErrorListener(\n initErrorReceived: (error: ConfigurationError) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('DolphinSdk-InitError', (event) =>\n initErrorReceived(MoveSdk.configurationErrorFromNative(event.error))\n );\n }\n\n static addAuthStateListener(\n authStateChanged: (event: AuthStateEvent) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('DolphinSdk-AuthState', (event) => {\n const transformedEvent = {\n ...event,\n state: MoveSdk.authStateFromNative(event.state),\n };\n authStateChanged(transformedEvent);\n });\n }\n\n static addAppEventListener(\n appEventReceived: (event: string) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('DolphinSdk-AppEvent', (event) => {\n appEventReceived(event);\n });\n }\n\n static version(): string {\n return Platform.OS === 'android'\n ? NativeMoveSdk.getConstants().version\n : 'Unknown';\n }\n\n static finishCurrentTrip() {\n NativeMoveSdk.finishCurrentTrip();\n }\n\n static ignoreCurrentTrip() {\n NativeMoveSdk.ignoreCurrentTrip();\n }\n\n // **** PERMISSIONS MODULE START *****\n\n static canDrawOverlays(): Promise<boolean> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.canDrawOverlays().then((result: boolean) =>\n resolve(result)\n );\n });\n }\n\n static requestDrawOverlaysPermission() {\n if (Platform.OS === 'android') {\n NativeMoveSdk.requestDrawOverlaysPermission();\n } else {\n console.warn(\n 'MoveSdk.requestAppIgnoringBatteryOptimization() is Android OS only.'\n );\n }\n }\n\n static isAppIgnoringBatteryOptimization(): Promise<boolean> {\n return new Promise((resolve, _reject) => {\n NativeMoveSdk.isAppIgnoringBatteryOptimization().then((result: boolean) =>\n resolve(result)\n );\n });\n }\n\n static requestAppIgnoringBatteryOptimization() {\n if (Platform.OS === 'android') {\n NativeMoveSdk.requestAppIgnoringBatteryOptimization();\n } else {\n console.warn(\n 'MoveSdk.requestAppIgnoringBatteryOptimization() is Android OS only.'\n );\n }\n }\n\n // **** PERMISSIONS MODULE END *****\n}\n"]}
1
+ {"version":3,"sources":["index.ts"],"names":["NativeModules","NativeEventEmitter","Platform","MoveSdk","NativeMoveSdk","eventEmitter","sdkStateFromNative","sdkState","UNINITIALIZED","READY","RUNNING","includes","tripStateFromNative","nativeTripState","UNKNOWN","DRIVING","HALT","IDLE","IGNORED","authStateFromNative","nativeAuthState","AUTH_VALID","AUTH_EXPIRED","AUTH_UNKNOWN","setup","config","auth","android","timelineDetectionServices","drivingServices","walkingServices","userId","projectId","accessToken","refreshToken","platformParams","OS","notifications","tripNotification","recognitionNotification","Error","title","text","channel","id","name","description","allowMockLocations","init","resolveError","updateAuth","startAutomaticDetection","stopAutomaticDetection","forceTripRecognition","keepInForeground","enabled","console","warn","keepActive","synchronizeUserData","getAuthState","authState","getState","state","getTripState","tripState","getErrors","getWarnings","initiateAssistanceCall","setAssistanceMetaData","data","addTripStateListener","tripStateChanged","addListener","event","addSdkStateListener","sdkStateChanged","addAuthStateListener","authStateChanged","transformedEvent","addErrorsListener","errorsReceived","errors","addWarningsListener","warningsReceived","warnings","addAppEventListener","appEventReceived","version","getConstants","finishCurrentTrip","ignoreCurrentTrip","requestMotionPermission","shutdown","canDrawOverlays","isAppIgnoringBatteryOptimization","requestDrawOverlaysPermission","requestAppIgnoringBatteryOptimization"],"mappings":"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","sourcesContent":["import {\n NativeModules,\n NativeEventEmitter,\n Platform,\n EmitterSubscription,\n} from 'react-native';\n\nexport type SdkState = 'UNINITIALIZED' | 'READY' | 'RUNNING';\nexport type TripState = 'UNKNOWN' | 'DRIVING' | 'HALT' | 'IDLE' | 'IGNORED';\nexport type AuthState = 'UNKNOWN' | 'VALID' | 'EXPIRED';\nexport type DrivingService = 'DISTRACTION_FREE_DRIVING' | 'DRIVING_BEHAVIOUR';\nexport type WalkingService = 'LOCATION';\nexport type OtherService = 'POINTS_OF_INTEREST';\nexport type TimelineDetectionService =\n | 'DRIVING'\n | 'CYCLING'\n | 'WALKING'\n | 'PUBLIC_TRANSPORT'\n | 'AUTOMATIC_IMPACT_DETECTION'\n | 'POINTS_OF_INTEREST';\n\nexport type ErrorReasons =\n | 'BACKGROUND_LOCATION_PERMISSION_MISSING'\n | 'LOCATION_PERMISSION_MISSING'\n | 'MOTION_PERMISSION_MISSING'\n | 'BATTERY_OPTIMIZATION'\n | 'BATTERY_PERMISSION_MISSING'\n | 'BLUETOOTH_PERMISSION_MISSING';\n\nexport type ErrorListService =\n | 'DRIVING[]'\n | 'DRIVING[DRIVING_BEHAVIOUR]'\n | 'DRIVING[DISTRACTION_FREE_DRIVING]'\n | 'DRIVING[DRIVING_BEHAVIOUR, DISTRACTION_FREE_DRIVING]'\n | 'DRIVING[DISTRACTION_FREE_DRIVING, DRIVING_BEHAVIOUR]'\n | 'WALKING[]'\n | 'WALKING[LOCATION]'\n | 'CYCLING'\n | 'PUBLIC_TRANSPORT'\n | 'AUTOMATIC_IMPACT_DETECTION'\n | 'POINTS_OF_INTEREST';\n\nexport type ErrorListItem = {\n reasons: Array<ErrorReasons>;\n service?: ErrorListService;\n};\n\nexport type ErrorListType = Array<ErrorListItem>;\n\nexport type MoveSdkConfig = {\n timelineDetectionServices: TimelineDetectionService[];\n drivingServices: DrivingService[];\n walkingServices: WalkingService[];\n otherServices?: OtherService[];\n};\n\nexport type MoveSdkAuth = {\n userId: string;\n accessToken: string;\n refreshToken: string;\n projectId: number;\n};\n\nexport type NotificationConfig = {\n title: string;\n text: string;\n channel: { id: string; name: string; description: string };\n};\n\nexport type MoveSdkAndroidConfig = {\n notifications: {\n recognitionNotification: NotificationConfig;\n tripNotification: NotificationConfig;\n };\n allowMockLocations: boolean;\n};\n\nexport type ListenerSubscription = EmitterSubscription;\n\nexport type AuthStateEvent = {\n state: AuthState;\n accessToken?: string;\n refreshToken?: string;\n};\n\nconst { MoveSdk: NativeMoveSdk } = NativeModules;\nconst eventEmitter = new NativeEventEmitter(NativeMoveSdk);\n\nexport default class MoveSdk {\n static READY: SdkState = 'READY';\n static RUNNING: SdkState = 'RUNNING';\n static UNINITIALIZED: SdkState = 'UNINITIALIZED';\n\n static AUTH_EXPIRED: AuthState = 'EXPIRED';\n static AUTH_VALID: AuthState = 'VALID';\n static AUTH_UNKNOWN: AuthState = 'UNKNOWN';\n\n static UNKNOWN: TripState = 'UNKNOWN';\n static DRIVING: TripState = 'DRIVING';\n static HALT: TripState = 'HALT';\n static IDLE: TripState = 'IDLE';\n static IGNORED: TripState = 'IGNORED';\n\n static sdkStateFromNative(sdkState: SdkState): SdkState {\n if (\n [\n MoveSdk.UNINITIALIZED,\n MoveSdk.READY,\n MoveSdk.RUNNING,\n MoveSdk.UNINITIALIZED,\n ].includes(sdkState)\n ) {\n return sdkState;\n }\n\n return MoveSdk.UNINITIALIZED;\n }\n\n static tripStateFromNative(nativeTripState: TripState): TripState {\n if (\n [\n MoveSdk.UNKNOWN,\n MoveSdk.DRIVING,\n MoveSdk.HALT,\n MoveSdk.IDLE,\n MoveSdk.IGNORED,\n ].includes(nativeTripState)\n ) {\n return nativeTripState;\n }\n\n return MoveSdk.UNKNOWN;\n }\n\n static authStateFromNative(nativeAuthState: AuthState): AuthState {\n if ([MoveSdk.AUTH_VALID, MoveSdk.AUTH_EXPIRED].includes(nativeAuthState)) {\n return nativeAuthState;\n }\n\n return MoveSdk.AUTH_UNKNOWN;\n }\n\n static async setup(\n config: MoveSdkConfig,\n auth: MoveSdkAuth,\n android: MoveSdkAndroidConfig\n ): Promise<void> {\n const { timelineDetectionServices, drivingServices, walkingServices } =\n config;\n\n const { userId, projectId, accessToken, refreshToken } = auth;\n\n let platformParams: Array<string | boolean> = [];\n if (Platform.OS === 'android') {\n const { notifications } = android;\n\n const { tripNotification, recognitionNotification } = notifications;\n\n if (!tripNotification || !recognitionNotification) {\n throw new Error(\n 'MOVE SDK needs notification configuration for Android'\n );\n }\n\n platformParams = [\n recognitionNotification.title,\n recognitionNotification.text,\n recognitionNotification.channel.id,\n recognitionNotification.channel.name,\n recognitionNotification.channel.description,\n tripNotification.title,\n tripNotification.text,\n tripNotification.channel.id,\n tripNotification.channel.name,\n tripNotification.channel.description,\n ];\n }\n\n return await NativeMoveSdk.setup(\n userId,\n accessToken,\n refreshToken,\n projectId,\n // Config\n timelineDetectionServices,\n drivingServices,\n walkingServices,\n\n // Platform config\n ...platformParams\n );\n }\n\n static allowMockLocations(allowMockLocations: boolean) {\n NativeMoveSdk.allowMockLocations(allowMockLocations);\n }\n\n /* Deprecated */\n static init() {\n NativeMoveSdk.init();\n }\n\n static resolveError() {\n NativeMoveSdk.resolveError();\n }\n\n static updateAuth(auth: MoveSdkAuth) {\n const { userId, projectId, accessToken, refreshToken } = auth;\n NativeMoveSdk.updateAuth(userId, accessToken, refreshToken, projectId);\n }\n\n static startAutomaticDetection() {\n NativeMoveSdk.startAutomaticDetection();\n }\n\n static stopAutomaticDetection() {\n NativeMoveSdk.stopAutomaticDetection();\n }\n\n static forceTripRecognition() {\n NativeMoveSdk.forceTripRecognition();\n }\n\n static keepInForeground(enabled: boolean) {\n if (Platform.OS === 'android') {\n NativeMoveSdk.keepInForeground(enabled);\n } else {\n console.warn('MoveSdk.keepInForeground() is Android OS only.');\n }\n }\n\n static keepActive(enabled: boolean) {\n if (Platform.OS === 'android') {\n NativeMoveSdk.keepActive(enabled);\n } else {\n console.warn('MoveSdk.keepActive() is Android OS only.');\n }\n }\n\n static async synchronizeUserData(): Promise<boolean> {\n return await NativeMoveSdk.synchronizeUserData();\n }\n\n static async getAuthState(): Promise<AuthState> {\n const authState = await NativeMoveSdk.getAuthState();\n return MoveSdk.authStateFromNative(authState);\n }\n\n static async getState(): Promise<SdkState> {\n const state = await NativeMoveSdk.getState();\n return MoveSdk.sdkStateFromNative(state);\n }\n\n static async getTripState(): Promise<TripState> {\n const tripState = await NativeMoveSdk.getTripState();\n return MoveSdk.tripStateFromNative(tripState);\n }\n\n static async getErrors(): Promise<ErrorListType> {\n return await NativeMoveSdk.getErrors();\n }\n\n static async getWarnings(): Promise<ErrorListType> {\n return await NativeMoveSdk.getWarnings();\n }\n\n static async initiateAssistanceCall(): Promise<boolean> {\n return await NativeMoveSdk.initiateAssistanceCall();\n }\n\n static setAssistanceMetaData(data: string) {\n NativeMoveSdk.setAssistanceMetaData(data);\n }\n\n static addTripStateListener(\n tripStateChanged: (state: TripState) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_TRIP_STATE', (event) =>\n tripStateChanged(MoveSdk.tripStateFromNative(event.state))\n );\n }\n\n static addSdkStateListener(\n sdkStateChanged: (state: SdkState) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_STATE', (event) => {\n sdkStateChanged(MoveSdk.sdkStateFromNative(event.state));\n });\n }\n\n static addAuthStateListener(\n authStateChanged: (event: AuthStateEvent) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_AUTH_STATE', (event) => {\n const transformedEvent = {\n ...event,\n state: MoveSdk.authStateFromNative(event.state),\n };\n authStateChanged(transformedEvent);\n });\n }\n\n static addErrorsListener(\n errorsReceived: (event: ErrorListType) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_ERRORS', (event) => {\n errorsReceived(event.errors);\n });\n }\n\n static addWarningsListener(\n warningsReceived: (event: ErrorListType) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_WARNINGS', (event) => {\n warningsReceived(event.warnings);\n });\n }\n\n static addAppEventListener(\n appEventReceived: (event: string) => void\n ): ListenerSubscription {\n return eventEmitter.addListener('MOVE_SDK_APP_EVENT', (event) => {\n appEventReceived(event);\n });\n }\n\n static version(): string {\n return Platform.OS === 'android'\n ? NativeMoveSdk.getConstants().version\n : 'Unknown';\n }\n\n static finishCurrentTrip() {\n NativeMoveSdk.finishCurrentTrip();\n }\n\n static ignoreCurrentTrip() {\n NativeMoveSdk.ignoreCurrentTrip();\n }\n\n static requestMotionPermission() {\n if (Platform.OS === 'ios') {\n NativeMoveSdk.requestMotionPermission();\n } else {\n console.warn('MoveSdk.requestMotionPermission() is iOS only.');\n }\n }\n\n static shutdown() {\n NativeMoveSdk.shutdown();\n }\n\n // **** PERMISSIONS MODULE START *****\n\n static async canDrawOverlays(): Promise<boolean> {\n return await NativeMoveSdk.isAppIgnoringBatteryOptimization();\n }\n\n static requestDrawOverlaysPermission() {\n if (Platform.OS === 'android') {\n NativeMoveSdk.requestDrawOverlaysPermission();\n } else {\n console.warn(\n 'MoveSdk.requestAppIgnoringBatteryOptimization() is Android OS only.'\n );\n }\n }\n\n static async isAppIgnoringBatteryOptimization(): Promise<boolean> {\n return await NativeMoveSdk.isAppIgnoringBatteryOptimization();\n }\n\n static requestAppIgnoringBatteryOptimization() {\n if (Platform.OS === 'android') {\n NativeMoveSdk.requestAppIgnoringBatteryOptimization();\n } else {\n console.warn(\n 'MoveSdk.requestAppIgnoringBatteryOptimization() is Android OS only.'\n );\n }\n }\n\n // **** PERMISSIONS MODULE END *****\n}\n"]}
@@ -1,29 +1,29 @@
1
1
  import { EmitterSubscription } from 'react-native';
2
- export declare type AndroidSdkState = 'Error' | 'Uninitialised' | 'Ready' | 'Running';
3
- export declare type SdkState = 'error' | 'uninitialized' | 'ready' | 'running';
4
- export declare type NativeSdkState = AndroidSdkState | SdkState;
5
- export declare type TripState = 'unknown' | 'driving' | 'halt' | 'idle' | 'ignored';
6
- export declare type AuthState = 'unknown' | 'valid' | 'expired';
7
- export declare type AndroidTripState = 'UNKNOWN' | 'DRIVING' | 'HALT' | 'IDLE' | 'IGNORED';
8
- export declare type NativeTripState = AndroidTripState | TripState;
9
- export declare type AndroidAuthState = 'UNKNOWN' | 'VALID' | 'EXPIRED';
10
- export declare type IosAuthState = 'unknown' | 'valid' | 'expired';
11
- export declare type NativeAuthState = AndroidAuthState | IosAuthState;
12
- export declare type DrivingService = 'DistractionFreeDriving' | 'DrivingBehaviour';
13
- export declare type WalkingService = 'Location';
14
- export declare type OtherService = 'PointsOfInterest';
15
- export declare type TimelineDetectionService = 'DRIVING' | 'BICYCLE' | 'WALKING' | 'PUBLIC_TRANSPORT';
2
+ export declare type SdkState = 'UNINITIALIZED' | 'READY' | 'RUNNING';
3
+ export declare type TripState = 'UNKNOWN' | 'DRIVING' | 'HALT' | 'IDLE' | 'IGNORED';
4
+ export declare type AuthState = 'UNKNOWN' | 'VALID' | 'EXPIRED';
5
+ export declare type DrivingService = 'DISTRACTION_FREE_DRIVING' | 'DRIVING_BEHAVIOUR';
6
+ export declare type WalkingService = 'LOCATION';
7
+ export declare type OtherService = 'POINTS_OF_INTEREST';
8
+ export declare type TimelineDetectionService = 'DRIVING' | 'CYCLING' | 'WALKING' | 'PUBLIC_TRANSPORT' | 'AUTOMATIC_IMPACT_DETECTION' | 'POINTS_OF_INTEREST';
9
+ export declare type ErrorReasons = 'BACKGROUND_LOCATION_PERMISSION_MISSING' | 'LOCATION_PERMISSION_MISSING' | 'MOTION_PERMISSION_MISSING' | 'BATTERY_OPTIMIZATION' | 'BATTERY_PERMISSION_MISSING' | 'BLUETOOTH_PERMISSION_MISSING';
10
+ export declare type ErrorListService = 'DRIVING[]' | 'DRIVING[DRIVING_BEHAVIOUR]' | 'DRIVING[DISTRACTION_FREE_DRIVING]' | 'DRIVING[DRIVING_BEHAVIOUR, DISTRACTION_FREE_DRIVING]' | 'DRIVING[DISTRACTION_FREE_DRIVING, DRIVING_BEHAVIOUR]' | 'WALKING[]' | 'WALKING[LOCATION]' | 'CYCLING' | 'PUBLIC_TRANSPORT' | 'AUTOMATIC_IMPACT_DETECTION' | 'POINTS_OF_INTEREST';
11
+ export declare type ErrorListItem = {
12
+ reasons: Array<ErrorReasons>;
13
+ service?: ErrorListService;
14
+ };
15
+ export declare type ErrorListType = Array<ErrorListItem>;
16
16
  export declare type MoveSdkConfig = {
17
17
  timelineDetectionServices: TimelineDetectionService[];
18
18
  drivingServices: DrivingService[];
19
19
  walkingServices: WalkingService[];
20
- otherServices: OtherService[];
20
+ otherServices?: OtherService[];
21
21
  };
22
22
  export declare type MoveSdkAuth = {
23
- contractId: string;
23
+ userId: string;
24
24
  accessToken: string;
25
25
  refreshToken: string;
26
- productId: number;
26
+ projectId: number;
27
27
  };
28
28
  export declare type NotificationConfig = {
29
29
  title: string;
@@ -42,55 +42,55 @@ export declare type MoveSdkAndroidConfig = {
42
42
  allowMockLocations: boolean;
43
43
  };
44
44
  export declare type ListenerSubscription = EmitterSubscription;
45
- export declare type ConfigurationError = 'authinvalid' | 'configmismatch' | 'serviceunreachable';
46
- export declare type IosConfigurationError = 'serviceUnreachable' | 'authInvalid' | 'configMismatch';
47
- export declare type AndroidConfigurationError = 'ServiceUnreachable' | 'AuthInvalid' | 'ConfigMismatch';
48
- export declare type NativeConfigurationError = IosConfigurationError | AndroidConfigurationError;
49
45
  export declare type AuthStateEvent = {
50
46
  state: AuthState;
51
47
  accessToken?: string;
52
48
  refreshToken?: string;
53
49
  };
54
50
  export default class MoveSdk {
55
- static ERROR: SdkState;
56
51
  static READY: SdkState;
57
52
  static RUNNING: SdkState;
58
53
  static UNINITIALIZED: SdkState;
59
- static AUTH_INVALID: ConfigurationError;
60
54
  static AUTH_EXPIRED: AuthState;
61
55
  static AUTH_VALID: AuthState;
56
+ static AUTH_UNKNOWN: AuthState;
62
57
  static UNKNOWN: TripState;
63
58
  static DRIVING: TripState;
64
59
  static HALT: TripState;
65
60
  static IDLE: TripState;
66
61
  static IGNORED: TripState;
67
- static sdkStateFromNative(nativeSdkState: NativeSdkState): SdkState | null;
68
- static tripStateFromNative(nativeTripState: NativeTripState): TripState | null;
69
- static authStateFromNative(nativeAuthState: NativeAuthState): AuthState | null;
70
- static configurationErrorFromNative(nativeInitError: NativeConfigurationError): ConfigurationError;
71
- static initialize(config: MoveSdkConfig, auth: MoveSdkAuth, android: MoveSdkAndroidConfig): void;
62
+ static sdkStateFromNative(sdkState: SdkState): SdkState;
63
+ static tripStateFromNative(nativeTripState: TripState): TripState;
64
+ static authStateFromNative(nativeAuthState: AuthState): AuthState;
65
+ static setup(config: MoveSdkConfig, auth: MoveSdkAuth, android: MoveSdkAndroidConfig): Promise<void>;
66
+ static allowMockLocations(allowMockLocations: boolean): void;
67
+ static init(): void;
72
68
  static resolveError(): void;
73
69
  static updateAuth(auth: MoveSdkAuth): void;
74
70
  static startAutomaticDetection(): void;
71
+ static stopAutomaticDetection(): void;
75
72
  static forceTripRecognition(): void;
76
73
  static keepInForeground(enabled: boolean): void;
77
74
  static keepActive(enabled: boolean): void;
78
- static stopAutomaticDetection(): void;
79
75
  static synchronizeUserData(): Promise<boolean>;
80
- static shutdown(): void;
81
- static getAuthState(): Promise<AuthState | null>;
82
- static getState(): Promise<SdkState | null>;
83
- static getTripState(): Promise<TripState | null>;
84
- static addTripStateListener(tripStateChanged: (state: TripState | null) => void): ListenerSubscription;
85
- static addSDKStateListener(sdkStateChanged: (event: {
86
- state: SdkState | null;
87
- }) => void): ListenerSubscription;
88
- static addInitErrorListener(initErrorReceived: (error: ConfigurationError) => void): ListenerSubscription;
76
+ static getAuthState(): Promise<AuthState>;
77
+ static getState(): Promise<SdkState>;
78
+ static getTripState(): Promise<TripState>;
79
+ static getErrors(): Promise<ErrorListType>;
80
+ static getWarnings(): Promise<ErrorListType>;
81
+ static initiateAssistanceCall(): Promise<boolean>;
82
+ static setAssistanceMetaData(data: string): void;
83
+ static addTripStateListener(tripStateChanged: (state: TripState) => void): ListenerSubscription;
84
+ static addSdkStateListener(sdkStateChanged: (state: SdkState) => void): ListenerSubscription;
89
85
  static addAuthStateListener(authStateChanged: (event: AuthStateEvent) => void): ListenerSubscription;
86
+ static addErrorsListener(errorsReceived: (event: ErrorListType) => void): ListenerSubscription;
87
+ static addWarningsListener(warningsReceived: (event: ErrorListType) => void): ListenerSubscription;
90
88
  static addAppEventListener(appEventReceived: (event: string) => void): ListenerSubscription;
91
89
  static version(): string;
92
90
  static finishCurrentTrip(): void;
93
91
  static ignoreCurrentTrip(): void;
92
+ static requestMotionPermission(): void;
93
+ static shutdown(): void;
94
94
  static canDrawOverlays(): Promise<boolean>;
95
95
  static requestDrawOverlaysPermission(): void;
96
96
  static isAppIgnoringBatteryOptimization(): Promise<boolean>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-move-sdk",
3
- "version": "0.1.4",
3
+ "version": "0.2.0",
4
4
  "description": "React Native library for MOVE SDK",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -3,6 +3,8 @@ require 'json'
3
3
  package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
4
4
 
5
5
  Pod::Spec.new do |s|
6
+ s.module_name = "ReactMoveSDK"
7
+ s.header_dir = "ReactMoveSDK"
6
8
  s.name = "react-native-move-sdk"
7
9
  s.version = package["version"]
8
10
  s.summary = package["description"]
@@ -16,5 +18,5 @@ Pod::Spec.new do |s|
16
18
  s.source_files = "ios/**/*.{h,m,mm,swift}"
17
19
 
18
20
  s.dependency 'React'
19
- s.dependency 'DolphinMoveSDK', '1.6.2.196'
21
+ s.dependency 'MoveSDK', '2.0.0.212'
20
22
  end