react-native-okhi 1.0.3-2.beta.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/LICENSE +20 -0
- package/README.md +174 -0
- package/android/build.gradle +139 -0
- package/android/gradle.properties +5 -0
- package/android/src/main/AndroidManifest.xml +4 -0
- package/android/src/main/java/com/reactnativeokhi/OkhiModule.java +317 -0
- package/android/src/main/java/com/reactnativeokhi/OkhiPackage.java +28 -0
- package/ios/OkHiExtension.swift +27 -0
- package/ios/OkHiStruct.swift +29 -0
- package/ios/Okhi-Bridging-Header.h +3 -0
- package/ios/Okhi.m +41 -0
- package/ios/Okhi.swift +207 -0
- package/ios/Okhi.xcodeproj/project.pbxproj +283 -0
- package/ios/Okhi.xcodeproj/project.xcworkspace/contents.xcworkspacedata +4 -0
- package/lib/commonjs/OkCollect/Helpers.js +47 -0
- package/lib/commonjs/OkCollect/Helpers.js.map +1 -0
- package/lib/commonjs/OkCollect/OkHiLocationManager.js +202 -0
- package/lib/commonjs/OkCollect/OkHiLocationManager.js.map +1 -0
- package/lib/commonjs/OkCollect/Spinner.js +32 -0
- package/lib/commonjs/OkCollect/Spinner.js.map +1 -0
- package/lib/commonjs/OkCollect/Util.js +192 -0
- package/lib/commonjs/OkCollect/Util.js.map +1 -0
- package/lib/commonjs/OkCollect/app.json +4 -0
- package/lib/commonjs/OkCollect/index.js +52 -0
- package/lib/commonjs/OkCollect/index.js.map +1 -0
- package/lib/commonjs/OkCollect/types.js +6 -0
- package/lib/commonjs/OkCollect/types.js.map +1 -0
- package/lib/commonjs/OkCore/Helpers.js +367 -0
- package/lib/commonjs/OkCore/Helpers.js.map +1 -0
- package/lib/commonjs/OkCore/OkHiAuth.js +126 -0
- package/lib/commonjs/OkCore/OkHiAuth.js.map +1 -0
- package/lib/commonjs/OkCore/OkHiException.js +133 -0
- package/lib/commonjs/OkCore/OkHiException.js.map +1 -0
- package/lib/commonjs/OkCore/OkHiMode.js +16 -0
- package/lib/commonjs/OkCore/OkHiMode.js.map +1 -0
- package/lib/commonjs/OkCore/_helpers.js +50 -0
- package/lib/commonjs/OkCore/_helpers.js.map +1 -0
- package/lib/commonjs/OkCore/_types.js +2 -0
- package/lib/commonjs/OkCore/_types.js.map +1 -0
- package/lib/commonjs/OkCore/index.js +117 -0
- package/lib/commonjs/OkCore/index.js.map +1 -0
- package/lib/commonjs/OkCore/types.js +2 -0
- package/lib/commonjs/OkCore/types.js.map +1 -0
- package/lib/commonjs/OkHiNativeModule/index.js +24 -0
- package/lib/commonjs/OkHiNativeModule/index.js.map +1 -0
- package/lib/commonjs/OkVerify/index.js +246 -0
- package/lib/commonjs/OkVerify/index.js.map +1 -0
- package/lib/commonjs/OkVerify/types.js +2 -0
- package/lib/commonjs/OkVerify/types.js.map +1 -0
- package/lib/commonjs/index.js +45 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/module/OkCollect/Helpers.js +36 -0
- package/lib/module/OkCollect/Helpers.js.map +1 -0
- package/lib/module/OkCollect/OkHiLocationManager.js +179 -0
- package/lib/module/OkCollect/OkHiLocationManager.js.map +1 -0
- package/lib/module/OkCollect/Spinner.js +20 -0
- package/lib/module/OkCollect/Spinner.js.map +1 -0
- package/lib/module/OkCollect/Util.js +171 -0
- package/lib/module/OkCollect/Util.js.map +1 -0
- package/lib/module/OkCollect/app.json +4 -0
- package/lib/module/OkCollect/index.js +4 -0
- package/lib/module/OkCollect/index.js.map +1 -0
- package/lib/module/OkCollect/types.js +2 -0
- package/lib/module/OkCollect/types.js.map +1 -0
- package/lib/module/OkCore/Helpers.js +315 -0
- package/lib/module/OkCore/Helpers.js.map +1 -0
- package/lib/module/OkCore/OkHiAuth.js +112 -0
- package/lib/module/OkCore/OkHiAuth.js.map +1 -0
- package/lib/module/OkCore/OkHiException.js +124 -0
- package/lib/module/OkCore/OkHiException.js.map +1 -0
- package/lib/module/OkCore/OkHiMode.js +8 -0
- package/lib/module/OkCore/OkHiMode.js.map +1 -0
- package/lib/module/OkCore/_helpers.js +38 -0
- package/lib/module/OkCore/_helpers.js.map +1 -0
- package/lib/module/OkCore/_types.js +2 -0
- package/lib/module/OkCore/_types.js.map +1 -0
- package/lib/module/OkCore/index.js +50 -0
- package/lib/module/OkCore/index.js.map +1 -0
- package/lib/module/OkCore/types.js +2 -0
- package/lib/module/OkCore/types.js.map +1 -0
- package/lib/module/OkHiNativeModule/index.js +14 -0
- package/lib/module/OkHiNativeModule/index.js.map +1 -0
- package/lib/module/OkVerify/index.js +187 -0
- package/lib/module/OkVerify/index.js.map +1 -0
- package/lib/module/OkVerify/types.js +2 -0
- package/lib/module/OkVerify/types.js.map +1 -0
- package/lib/module/index.js +4 -0
- package/lib/module/index.js.map +1 -0
- package/lib/typescript/OkCollect/Helpers.d.ts +9 -0
- package/lib/typescript/OkCollect/OkHiLocationManager.d.ts +6 -0
- package/lib/typescript/OkCollect/Spinner.d.ts +4 -0
- package/lib/typescript/OkCollect/Util.d.ts +26 -0
- package/lib/typescript/OkCollect/index.d.ts +3 -0
- package/lib/typescript/OkCollect/types.d.ts +133 -0
- package/lib/typescript/OkCore/Helpers.d.ts +82 -0
- package/lib/typescript/OkCore/OkHiAuth.d.ts +16 -0
- package/lib/typescript/OkCore/OkHiException.d.ts +81 -0
- package/lib/typescript/OkCore/OkHiMode.d.ts +7 -0
- package/lib/typescript/OkCore/_helpers.d.ts +3 -0
- package/lib/typescript/OkCore/_types.d.ts +38 -0
- package/lib/typescript/OkCore/index.d.ts +17 -0
- package/lib/typescript/OkCore/types.d.ts +180 -0
- package/lib/typescript/OkHiNativeModule/index.d.ts +34 -0
- package/lib/typescript/OkVerify/index.d.ts +60 -0
- package/lib/typescript/OkVerify/types.d.ts +5 -0
- package/lib/typescript/index.d.ts +3 -0
- package/package.json +152 -0
- package/react-native-okhi.podspec +36 -0
- package/src/OkCollect/Helpers.ts +53 -0
- package/src/OkCollect/OkHiLocationManager.tsx +209 -0
- package/src/OkCollect/Spinner.tsx +18 -0
- package/src/OkCollect/Util.ts +195 -0
- package/src/OkCollect/app.json +4 -0
- package/src/OkCollect/index.ts +3 -0
- package/src/OkCollect/types.ts +142 -0
- package/src/OkCore/Helpers.ts +389 -0
- package/src/OkCore/OkHiAuth.ts +106 -0
- package/src/OkCore/OkHiException.ts +93 -0
- package/src/OkCore/OkHiMode.ts +7 -0
- package/src/OkCore/_helpers.ts +48 -0
- package/src/OkCore/_types.ts +37 -0
- package/src/OkCore/index.ts +59 -0
- package/src/OkCore/types.ts +203 -0
- package/src/OkHiNativeModule/index.ts +63 -0
- package/src/OkVerify/index.ts +243 -0
- package/src/OkVerify/types.ts +3 -0
- package/src/index.tsx +3 -0
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.OkHiLocationManager = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _reactNative = require("react-native");
|
|
11
|
+
|
|
12
|
+
var _reactNativeWebview = require("react-native-webview");
|
|
13
|
+
|
|
14
|
+
var _Spinner = require("./Spinner");
|
|
15
|
+
|
|
16
|
+
var _Util = require("./Util");
|
|
17
|
+
|
|
18
|
+
var _OkHiException = require("../OkCore/OkHiException");
|
|
19
|
+
|
|
20
|
+
var _OkHiAuth = require("../OkCore/OkHiAuth");
|
|
21
|
+
|
|
22
|
+
var _OkVerify = require("../OkVerify");
|
|
23
|
+
|
|
24
|
+
var _OkCore = require("../OkCore");
|
|
25
|
+
|
|
26
|
+
var _OkHiNativeModule = require("../OkHiNativeModule");
|
|
27
|
+
|
|
28
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
29
|
+
|
|
30
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* The OkHiLocationManager React Component is used to display an in app modal, enabling the user to quickly create an accurate OkHi address.
|
|
34
|
+
*/
|
|
35
|
+
const OkHiLocationManager = props => {
|
|
36
|
+
const [token, setToken] = (0, _react.useState)(null);
|
|
37
|
+
const [applicationConfiguration, setApplicationConfiguration] = (0, _react.useState)(null);
|
|
38
|
+
const [startPayload, setStartPaylaod] = (0, _react.useState)(null);
|
|
39
|
+
const defaultStyle = {
|
|
40
|
+
flex: 1
|
|
41
|
+
};
|
|
42
|
+
const style = props.style ? { ...props.style,
|
|
43
|
+
...defaultStyle
|
|
44
|
+
} : defaultStyle;
|
|
45
|
+
const {
|
|
46
|
+
user,
|
|
47
|
+
onSuccess,
|
|
48
|
+
onCloseRequest,
|
|
49
|
+
onError,
|
|
50
|
+
loader,
|
|
51
|
+
launch
|
|
52
|
+
} = props;
|
|
53
|
+
const webViewRef = (0, _react.useRef)(null);
|
|
54
|
+
(0, _react.useEffect)(() => {
|
|
55
|
+
if (applicationConfiguration == null && token == null && user.phone) {
|
|
56
|
+
(0, _OkCore.getApplicationConfiguration)().then(config => {
|
|
57
|
+
if (!config && launch) {
|
|
58
|
+
onError(new _OkHiException.OkHiException({
|
|
59
|
+
code: _OkHiException.OkHiException.UNAUTHORIZED_CODE,
|
|
60
|
+
message: _OkHiException.OkHiException.UNAUTHORIZED_MESSAGE
|
|
61
|
+
}));
|
|
62
|
+
} else if (config) {
|
|
63
|
+
setApplicationConfiguration(config);
|
|
64
|
+
const auth = new _OkHiAuth.OkHiAuth();
|
|
65
|
+
auth.anonymousSignInWithPhoneNumber(user.phone, ['verify'], config).then(setToken).catch(onError);
|
|
66
|
+
}
|
|
67
|
+
}).catch(error => {
|
|
68
|
+
if (launch) {
|
|
69
|
+
onError(error);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}, [onError, user.phone, launch, applicationConfiguration, token]);
|
|
74
|
+
(0, _react.useEffect)(() => {
|
|
75
|
+
if (token !== null && applicationConfiguration !== null) {
|
|
76
|
+
// TODO: handle faliure
|
|
77
|
+
(0, _Util.generateStartDataPayload)(props, token, applicationConfiguration).then(startPayload => {
|
|
78
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
79
|
+
_OkHiNativeModule.OkHiNativeModule.setItem('okcollect-launch-payload', JSON.stringify({
|
|
80
|
+
message: 'select_location',
|
|
81
|
+
payload: startPayload,
|
|
82
|
+
url: (0, _Util.getFrameUrl)(applicationConfiguration)
|
|
83
|
+
})).catch(console.error);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
setStartPaylaod(startPayload);
|
|
87
|
+
}).catch(console.error);
|
|
88
|
+
}
|
|
89
|
+
}, [applicationConfiguration, props, token]);
|
|
90
|
+
|
|
91
|
+
const handleOnMessage = _ref => {
|
|
92
|
+
let {
|
|
93
|
+
nativeEvent: {
|
|
94
|
+
data
|
|
95
|
+
}
|
|
96
|
+
} = _ref;
|
|
97
|
+
|
|
98
|
+
try {
|
|
99
|
+
const response = JSON.parse(data);
|
|
100
|
+
|
|
101
|
+
if (response.message === 'fatal_exit') {
|
|
102
|
+
onError(new _OkHiException.OkHiException({
|
|
103
|
+
code: _OkHiException.OkHiException.UNKNOWN_ERROR_CODE,
|
|
104
|
+
message: response.payload.toString()
|
|
105
|
+
}));
|
|
106
|
+
} else if (response.message === 'exit_app') {
|
|
107
|
+
onCloseRequest();
|
|
108
|
+
} else if (response.message === 'request_enable_protected_apps') {
|
|
109
|
+
(0, _OkCore.openProtectedAppsSettings)();
|
|
110
|
+
} else {
|
|
111
|
+
onSuccess({ ...response.payload,
|
|
112
|
+
location: (0, _Util.parseOkHiLocation)(response.payload.location),
|
|
113
|
+
startVerification: function (config) {
|
|
114
|
+
const createdUser = { ...this.user
|
|
115
|
+
};
|
|
116
|
+
const location = { ...this.location
|
|
117
|
+
};
|
|
118
|
+
return new Promise((resolve, reject) => {
|
|
119
|
+
if (!location.id) {
|
|
120
|
+
reject(new _OkHiException.OkHiException({
|
|
121
|
+
code: _OkHiException.OkHiException.BAD_REQUEST_CODE,
|
|
122
|
+
message: 'Missing location id from response'
|
|
123
|
+
}));
|
|
124
|
+
} else {
|
|
125
|
+
(0, _OkVerify.start)(createdUser.phone, location.id, location.lat, location.lon, config).then(resolve).catch(reject);
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
} catch (error) {
|
|
132
|
+
let errorMessage = 'Something went wrong';
|
|
133
|
+
|
|
134
|
+
if (error instanceof Error) {
|
|
135
|
+
errorMessage = error.message;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
onError(new _OkHiException.OkHiException({
|
|
139
|
+
code: _OkHiException.OkHiException.UNKNOWN_ERROR_CODE,
|
|
140
|
+
message: errorMessage
|
|
141
|
+
}));
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
|
|
145
|
+
const handleOnError = () => {
|
|
146
|
+
onError(new _OkHiException.OkHiException({
|
|
147
|
+
code: _OkHiException.OkHiException.NETWORK_ERROR_CODE,
|
|
148
|
+
message: _OkHiException.OkHiException.NETWORK_ERROR_MESSAGE
|
|
149
|
+
}));
|
|
150
|
+
};
|
|
151
|
+
|
|
152
|
+
const handleModalRequestClose = () => {
|
|
153
|
+
var _webViewRef$current;
|
|
154
|
+
|
|
155
|
+
(_webViewRef$current = webViewRef.current) === null || _webViewRef$current === void 0 ? void 0 : _webViewRef$current.goBack();
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
const renderContent = () => {
|
|
159
|
+
if (token === null || applicationConfiguration == null) {
|
|
160
|
+
return loader || /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, null);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
if (startPayload === null) {
|
|
164
|
+
return loader || /*#__PURE__*/_react.default.createElement(_Spinner.Spinner, null);
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
const {
|
|
168
|
+
jsAfterLoad,
|
|
169
|
+
jsBeforeLoad
|
|
170
|
+
} = (0, _Util.generateJavaScriptStartScript)({
|
|
171
|
+
message: 'select_location',
|
|
172
|
+
payload: startPayload
|
|
173
|
+
});
|
|
174
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.SafeAreaView, {
|
|
175
|
+
style: style
|
|
176
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNativeWebview.WebView, {
|
|
177
|
+
source: {
|
|
178
|
+
uri: (0, _Util.getFrameUrl)(applicationConfiguration)
|
|
179
|
+
},
|
|
180
|
+
injectedJavaScriptBeforeContentLoaded: _reactNative.Platform.OS === 'ios' ? jsBeforeLoad : undefined,
|
|
181
|
+
injectedJavaScript: _reactNative.Platform.OS === 'ios' ? undefined : jsAfterLoad,
|
|
182
|
+
onMessage: handleOnMessage,
|
|
183
|
+
onError: handleOnError,
|
|
184
|
+
onHttpError: handleOnError,
|
|
185
|
+
geolocationEnabled: true,
|
|
186
|
+
allowsBackForwardNavigationGestures: true,
|
|
187
|
+
ref: webViewRef
|
|
188
|
+
}));
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.Modal, {
|
|
192
|
+
animationType: "slide",
|
|
193
|
+
transparent: false,
|
|
194
|
+
visible: launch,
|
|
195
|
+
onRequestClose: handleModalRequestClose
|
|
196
|
+
}, launch ? renderContent() : null);
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
exports.OkHiLocationManager = OkHiLocationManager;
|
|
200
|
+
var _default = OkHiLocationManager;
|
|
201
|
+
exports.default = _default;
|
|
202
|
+
//# sourceMappingURL=OkHiLocationManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["OkHiLocationManager","props","token","setToken","useState","applicationConfiguration","setApplicationConfiguration","startPayload","setStartPaylaod","defaultStyle","flex","style","user","onSuccess","onCloseRequest","onError","loader","launch","webViewRef","useRef","useEffect","phone","getApplicationConfiguration","then","config","OkHiException","code","UNAUTHORIZED_CODE","message","UNAUTHORIZED_MESSAGE","auth","OkHiAuth","anonymousSignInWithPhoneNumber","catch","error","generateStartDataPayload","Platform","OS","OkHiNativeModule","setItem","JSON","stringify","payload","url","getFrameUrl","console","handleOnMessage","nativeEvent","data","response","parse","UNKNOWN_ERROR_CODE","toString","openProtectedAppsSettings","location","parseOkHiLocation","startVerification","createdUser","Promise","resolve","reject","id","BAD_REQUEST_CODE","sv","lat","lon","errorMessage","Error","handleOnError","NETWORK_ERROR_CODE","NETWORK_ERROR_MESSAGE","handleModalRequestClose","current","goBack","renderContent","jsAfterLoad","jsBeforeLoad","generateJavaScriptStartScript","uri","undefined"],"sources":["OkHiLocationManager.tsx"],"sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { Modal, SafeAreaView, Platform } from 'react-native';\nimport { WebView, WebViewMessageEvent } from 'react-native-webview';\nimport { Spinner } from './Spinner';\nimport type {\n OkHiLocationManagerResponse,\n OkHiLocationManagerProps,\n OkHiLocationManagerStartDataPayload,\n} from './types';\nimport {\n getFrameUrl,\n generateJavaScriptStartScript,\n generateStartDataPayload,\n parseOkHiLocation,\n} from './Util';\nimport { OkHiException } from '../OkCore/OkHiException';\nimport { OkHiAuth } from '../OkCore/OkHiAuth';\nimport type { AuthApplicationConfig } from '../OkCore/_types';\nimport { start as sv } from '../OkVerify';\nimport type { OkVerifyStartConfiguration } from '../OkVerify/types';\nimport {\n getApplicationConfiguration,\n openProtectedAppsSettings,\n} from '../OkCore';\nimport { OkHiNativeModule } from '../OkHiNativeModule';\n\n/**\n * The OkHiLocationManager React Component is used to display an in app modal, enabling the user to quickly create an accurate OkHi address.\n */\nexport const OkHiLocationManager = (props: OkHiLocationManagerProps) => {\n const [token, setToken] = useState<string | null>(null);\n const [applicationConfiguration, setApplicationConfiguration] =\n useState<AuthApplicationConfig | null>(null);\n const [startPayload, setStartPaylaod] =\n useState<null | OkHiLocationManagerStartDataPayload>(null);\n const defaultStyle = { flex: 1 };\n const style = props.style\n ? { ...props.style, ...defaultStyle }\n : defaultStyle;\n\n const { user, onSuccess, onCloseRequest, onError, loader, launch } = props;\n const webViewRef = useRef<WebView | null>(null);\n\n useEffect(() => {\n if (applicationConfiguration == null && token == null && user.phone) {\n getApplicationConfiguration()\n .then((config) => {\n if (!config && launch) {\n onError(\n new OkHiException({\n code: OkHiException.UNAUTHORIZED_CODE,\n message: OkHiException.UNAUTHORIZED_MESSAGE,\n })\n );\n } else if (config) {\n setApplicationConfiguration(config);\n const auth = new OkHiAuth();\n auth\n .anonymousSignInWithPhoneNumber(user.phone, ['verify'], config)\n .then(setToken)\n .catch(onError);\n }\n })\n .catch((error) => {\n if (launch) {\n onError(error);\n }\n });\n }\n }, [onError, user.phone, launch, applicationConfiguration, token]);\n\n useEffect(() => {\n if (token !== null && applicationConfiguration !== null) {\n // TODO: handle faliure\n generateStartDataPayload(props, token, applicationConfiguration)\n .then((startPayload) => {\n if (Platform.OS === 'android') {\n OkHiNativeModule.setItem(\n 'okcollect-launch-payload',\n JSON.stringify({\n message: 'select_location',\n payload: startPayload,\n url: getFrameUrl(applicationConfiguration),\n })\n ).catch(console.error);\n }\n setStartPaylaod(startPayload);\n })\n .catch(console.error);\n }\n }, [applicationConfiguration, props, token]);\n\n const handleOnMessage = ({ nativeEvent: { data } }: WebViewMessageEvent) => {\n try {\n const response: OkHiLocationManagerResponse = JSON.parse(data);\n if (response.message === 'fatal_exit') {\n onError(\n new OkHiException({\n code: OkHiException.UNKNOWN_ERROR_CODE,\n message: response.payload.toString(),\n })\n );\n } else if (response.message === 'exit_app') {\n onCloseRequest();\n } else if (response.message === 'request_enable_protected_apps') {\n openProtectedAppsSettings();\n } else {\n onSuccess({\n ...response.payload,\n location: parseOkHiLocation(response.payload.location),\n startVerification: function (config?: OkVerifyStartConfiguration) {\n const createdUser = { ...this.user };\n const location = { ...this.location };\n return new Promise((resolve, reject) => {\n if (!location.id) {\n reject(\n new OkHiException({\n code: OkHiException.BAD_REQUEST_CODE,\n message: 'Missing location id from response',\n })\n );\n } else {\n sv(\n createdUser.phone,\n location.id,\n location.lat,\n location.lon,\n config\n )\n .then(resolve)\n .catch(reject);\n }\n });\n },\n });\n }\n } catch (error) {\n let errorMessage = 'Something went wrong';\n if (error instanceof Error) {\n errorMessage = error.message;\n }\n onError(\n new OkHiException({\n code: OkHiException.UNKNOWN_ERROR_CODE,\n message: errorMessage,\n })\n );\n }\n };\n\n const handleOnError = () => {\n onError(\n new OkHiException({\n code: OkHiException.NETWORK_ERROR_CODE,\n message: OkHiException.NETWORK_ERROR_MESSAGE,\n })\n );\n };\n\n const handleModalRequestClose = () => {\n webViewRef.current?.goBack();\n };\n\n const renderContent = () => {\n if (token === null || applicationConfiguration == null) {\n return loader || <Spinner />;\n }\n\n if (startPayload === null) {\n return loader || <Spinner />;\n }\n\n const { jsAfterLoad, jsBeforeLoad } = generateJavaScriptStartScript({\n message: 'select_location',\n payload: startPayload,\n });\n\n return (\n <SafeAreaView style={style}>\n <WebView\n source={{ uri: getFrameUrl(applicationConfiguration) }}\n injectedJavaScriptBeforeContentLoaded={\n Platform.OS === 'ios' ? jsBeforeLoad : undefined\n }\n injectedJavaScript={Platform.OS === 'ios' ? undefined : jsAfterLoad}\n onMessage={handleOnMessage}\n onError={handleOnError}\n onHttpError={handleOnError}\n geolocationEnabled={true}\n allowsBackForwardNavigationGestures={true}\n ref={webViewRef}\n />\n </SafeAreaView>\n );\n };\n\n return (\n <Modal\n animationType=\"slide\"\n transparent={false}\n visible={launch}\n onRequestClose={handleModalRequestClose}\n >\n {launch ? renderContent() : null}\n </Modal>\n );\n};\n\nexport default OkHiLocationManager;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Spinner = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _reactNative = require("react-native");
|
|
11
|
+
|
|
12
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* Default spinner component that'll be used as the initial loading indicator.
|
|
16
|
+
*/
|
|
17
|
+
const Spinner = () => {
|
|
18
|
+
const style = {
|
|
19
|
+
flex: 1,
|
|
20
|
+
alignItems: 'center',
|
|
21
|
+
justifyContent: 'center'
|
|
22
|
+
};
|
|
23
|
+
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
24
|
+
style: style
|
|
25
|
+
}, /*#__PURE__*/_react.default.createElement(_reactNative.ActivityIndicator, {
|
|
26
|
+
color: "teal",
|
|
27
|
+
size: "small"
|
|
28
|
+
}));
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
exports.Spinner = Spinner;
|
|
32
|
+
//# sourceMappingURL=Spinner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Spinner","style","flex","alignItems","justifyContent"],"sources":["Spinner.tsx"],"sourcesContent":["import React from 'react';\nimport { ActivityIndicator, View, ViewStyle } from 'react-native';\n\n/**\n * Default spinner component that'll be used as the initial loading indicator.\n */\nexport const Spinner = () => {\n const style: ViewStyle = {\n flex: 1,\n alignItems: 'center',\n justifyContent: 'center',\n };\n return (\n <View style={style}>\n <ActivityIndicator color=\"teal\" size=\"small\" />\n </View>\n );\n};\n"],"mappings":";;;;;;;AAAA;;AACA;;;;AAEA;AACA;AACA;AACO,MAAMA,OAAO,GAAG,MAAM;EAC3B,MAAMC,KAAgB,GAAG;IACvBC,IAAI,EAAE,CADiB;IAEvBC,UAAU,EAAE,QAFW;IAGvBC,cAAc,EAAE;EAHO,CAAzB;EAKA,oBACE,6BAAC,iBAAD;IAAM,KAAK,EAAEH;EAAb,gBACE,6BAAC,8BAAD;IAAmB,KAAK,EAAC,MAAzB;IAAgC,IAAI,EAAC;EAArC,EADF,CADF;AAKD,CAXM"}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.parseOkHiLocation = exports.getFrameUrl = exports.generateStartDataPayload = exports.generateJavaScriptStartScript = void 0;
|
|
7
|
+
|
|
8
|
+
var _OkCore = require("../OkCore");
|
|
9
|
+
|
|
10
|
+
var _app = _interopRequireDefault(require("./app.json"));
|
|
11
|
+
|
|
12
|
+
var _reactNative = require("react-native");
|
|
13
|
+
|
|
14
|
+
var _OkHiNativeModule = require("../OkHiNativeModule");
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @ignore
|
|
20
|
+
*/
|
|
21
|
+
const generateStartDataPayload = async (props, authToken, applicationConfiguration) => {
|
|
22
|
+
var _props$theme, _props$theme$colors, _props$theme2, _props$theme2$appBar, _applicationConfigura, _applicationConfigura2, _applicationConfigura3, _props$config, _props$theme3, _props$theme3$appBar, _props$config2, _props$config2$appBar, _props$config3, _props$config3$addres, _props$config4, _props$config4$addres, _props$config5, _props$config5$addres, _props$config6, _props$config6$addres;
|
|
23
|
+
|
|
24
|
+
const payload = {};
|
|
25
|
+
payload.style = !props.theme ? undefined : {
|
|
26
|
+
base: {
|
|
27
|
+
color: (_props$theme = props.theme) === null || _props$theme === void 0 ? void 0 : (_props$theme$colors = _props$theme.colors) === null || _props$theme$colors === void 0 ? void 0 : _props$theme$colors.primary,
|
|
28
|
+
logo: (_props$theme2 = props.theme) === null || _props$theme2 === void 0 ? void 0 : (_props$theme2$appBar = _props$theme2.appBar) === null || _props$theme2$appBar === void 0 ? void 0 : _props$theme2$appBar.logo,
|
|
29
|
+
name: (_applicationConfigura = applicationConfiguration.app) === null || _applicationConfigura === void 0 ? void 0 : _applicationConfigura.name
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
payload.user = {
|
|
33
|
+
phone: props.user.phone,
|
|
34
|
+
firstName: props.user.firstName,
|
|
35
|
+
lastName: props.user.lastName,
|
|
36
|
+
email: props.user.email
|
|
37
|
+
};
|
|
38
|
+
payload.auth = {
|
|
39
|
+
authToken
|
|
40
|
+
};
|
|
41
|
+
payload.context = {
|
|
42
|
+
container: {
|
|
43
|
+
name: (_applicationConfigura2 = applicationConfiguration.app) === null || _applicationConfigura2 === void 0 ? void 0 : _applicationConfigura2.name,
|
|
44
|
+
version: (_applicationConfigura3 = applicationConfiguration.app) === null || _applicationConfigura3 === void 0 ? void 0 : _applicationConfigura3.version
|
|
45
|
+
},
|
|
46
|
+
developer: {
|
|
47
|
+
name: applicationConfiguration.context.developer
|
|
48
|
+
},
|
|
49
|
+
library: {
|
|
50
|
+
name: _app.default.name,
|
|
51
|
+
version: _app.default.version
|
|
52
|
+
},
|
|
53
|
+
platform: {
|
|
54
|
+
name: 'react-native'
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
let hasLocationPermission;
|
|
58
|
+
|
|
59
|
+
try {
|
|
60
|
+
hasLocationPermission = await (0, _OkCore.isLocationPermissionGranted)();
|
|
61
|
+
} catch (error) {
|
|
62
|
+
console.log(error);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
let hasBackgroundLocationPermission;
|
|
66
|
+
|
|
67
|
+
try {
|
|
68
|
+
hasBackgroundLocationPermission = await (0, _OkCore.isBackgroundLocationPermissionGranted)();
|
|
69
|
+
} catch (error) {
|
|
70
|
+
console.log(error);
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
if (typeof hasLocationPermission === 'boolean' && typeof hasBackgroundLocationPermission === 'boolean') {
|
|
74
|
+
payload.context.permissions = {
|
|
75
|
+
location: hasBackgroundLocationPermission ? 'always' : hasLocationPermission ? 'whenInUse' : 'denied'
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
80
|
+
const {
|
|
81
|
+
manufacturer,
|
|
82
|
+
model
|
|
83
|
+
} = await _OkHiNativeModule.OkHiNativeModule.retrieveDeviceInfo();
|
|
84
|
+
payload.context.device = {
|
|
85
|
+
manufacturer,
|
|
86
|
+
model
|
|
87
|
+
};
|
|
88
|
+
payload.context.permissions = { ...payload.context.permissions
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
payload.config = {
|
|
93
|
+
protectedApps: _reactNative.Platform.OS === 'android' && (await (0, _OkCore.canOpenProtectedAppsSettings)()),
|
|
94
|
+
streetView: typeof ((_props$config = props.config) === null || _props$config === void 0 ? void 0 : _props$config.streetView) === 'boolean' ? props.config.streetView : true,
|
|
95
|
+
appBar: {
|
|
96
|
+
color: (_props$theme3 = props.theme) === null || _props$theme3 === void 0 ? void 0 : (_props$theme3$appBar = _props$theme3.appBar) === null || _props$theme3$appBar === void 0 ? void 0 : _props$theme3$appBar.backgroundColor,
|
|
97
|
+
visible: (_props$config2 = props.config) === null || _props$config2 === void 0 ? void 0 : (_props$config2$appBar = _props$config2.appBar) === null || _props$config2$appBar === void 0 ? void 0 : _props$config2$appBar.visible
|
|
98
|
+
},
|
|
99
|
+
addressTypes: {
|
|
100
|
+
home: typeof ((_props$config3 = props.config) === null || _props$config3 === void 0 ? void 0 : (_props$config3$addres = _props$config3.addressTypes) === null || _props$config3$addres === void 0 ? void 0 : _props$config3$addres.home) === 'boolean' ? (_props$config4 = props.config) === null || _props$config4 === void 0 ? void 0 : (_props$config4$addres = _props$config4.addressTypes) === null || _props$config4$addres === void 0 ? void 0 : _props$config4$addres.home : true,
|
|
101
|
+
work: typeof ((_props$config5 = props.config) === null || _props$config5 === void 0 ? void 0 : (_props$config5$addres = _props$config5.addressTypes) === null || _props$config5$addres === void 0 ? void 0 : _props$config5$addres.work) === 'boolean' ? (_props$config6 = props.config) === null || _props$config6 === void 0 ? void 0 : (_props$config6$addres = _props$config6.addressTypes) === null || _props$config6$addres === void 0 ? void 0 : _props$config6$addres.work : true
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
return payload;
|
|
105
|
+
};
|
|
106
|
+
/**
|
|
107
|
+
* @ignore
|
|
108
|
+
*/
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
exports.generateStartDataPayload = generateStartDataPayload;
|
|
112
|
+
|
|
113
|
+
const getFrameUrl = applicationConfiguration => {
|
|
114
|
+
const DEV_FRAME_URL = 'https://dev-manager-v5.okhi.io';
|
|
115
|
+
const PROD_FRAME_URL = 'https://manager-v5.okhi.io';
|
|
116
|
+
const SANDBOX_FRAME_URL = 'https://sandbox-manager-v5.okhi.io';
|
|
117
|
+
|
|
118
|
+
if (applicationConfiguration.context.mode === _OkCore.OkHiMode.PROD) {
|
|
119
|
+
return PROD_FRAME_URL;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
if (applicationConfiguration.context.mode === 'dev') {
|
|
123
|
+
return DEV_FRAME_URL;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
return SANDBOX_FRAME_URL;
|
|
127
|
+
};
|
|
128
|
+
/**
|
|
129
|
+
* @ignore
|
|
130
|
+
*/
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
exports.getFrameUrl = getFrameUrl;
|
|
134
|
+
|
|
135
|
+
const generateJavaScriptStartScript = startPayload => {
|
|
136
|
+
const jsBeforeLoad = `
|
|
137
|
+
window.isNativeApp = true;
|
|
138
|
+
window.NativeApp = {
|
|
139
|
+
bridge: {
|
|
140
|
+
receiveMessage: window.ReactNativeWebView.postMessage
|
|
141
|
+
},
|
|
142
|
+
data: ${JSON.stringify(startPayload)}
|
|
143
|
+
}
|
|
144
|
+
true;
|
|
145
|
+
`;
|
|
146
|
+
const jsAfterLoad = `
|
|
147
|
+
window.startOkHiLocationManager({
|
|
148
|
+
receiveMessage: function(data) { window.ReactNativeWebView.postMessage(data) } },
|
|
149
|
+
${JSON.stringify(startPayload)})
|
|
150
|
+
`;
|
|
151
|
+
return {
|
|
152
|
+
jsBeforeLoad,
|
|
153
|
+
jsAfterLoad
|
|
154
|
+
};
|
|
155
|
+
};
|
|
156
|
+
/**
|
|
157
|
+
* @ignore
|
|
158
|
+
*/
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
exports.generateJavaScriptStartScript = generateJavaScriptStartScript;
|
|
162
|
+
|
|
163
|
+
const parseOkHiLocation = location => {
|
|
164
|
+
var _location$geo_point, _location$geo_point2, _location$street_view, _location$street_view2;
|
|
165
|
+
|
|
166
|
+
return {
|
|
167
|
+
id: location === null || location === void 0 ? void 0 : location.id,
|
|
168
|
+
lat: location === null || location === void 0 ? void 0 : (_location$geo_point = location.geo_point) === null || _location$geo_point === void 0 ? void 0 : _location$geo_point.lat,
|
|
169
|
+
lon: location === null || location === void 0 ? void 0 : (_location$geo_point2 = location.geo_point) === null || _location$geo_point2 === void 0 ? void 0 : _location$geo_point2.lon,
|
|
170
|
+
placeId: location === null || location === void 0 ? void 0 : location.place_id,
|
|
171
|
+
plusCode: location === null || location === void 0 ? void 0 : location.plus_code,
|
|
172
|
+
propertyName: location === null || location === void 0 ? void 0 : location.property_name,
|
|
173
|
+
streetName: location === null || location === void 0 ? void 0 : location.street_name,
|
|
174
|
+
title: location === null || location === void 0 ? void 0 : location.title,
|
|
175
|
+
subtitle: location === null || location === void 0 ? void 0 : location.subtitle,
|
|
176
|
+
directions: location === null || location === void 0 ? void 0 : location.directions,
|
|
177
|
+
otherInformation: location === null || location === void 0 ? void 0 : location.other_information,
|
|
178
|
+
url: location === null || location === void 0 ? void 0 : location.url,
|
|
179
|
+
streetViewPanoId: location === null || location === void 0 ? void 0 : (_location$street_view = location.street_view) === null || _location$street_view === void 0 ? void 0 : _location$street_view.pano_id,
|
|
180
|
+
streetViewPanoUrl: location === null || location === void 0 ? void 0 : (_location$street_view2 = location.street_view) === null || _location$street_view2 === void 0 ? void 0 : _location$street_view2.url,
|
|
181
|
+
userId: location === null || location === void 0 ? void 0 : location.user_id,
|
|
182
|
+
propertyNumber: location === null || location === void 0 ? void 0 : location.propertyNumber,
|
|
183
|
+
photo: location === null || location === void 0 ? void 0 : location.photo,
|
|
184
|
+
displayTitle: location === null || location === void 0 ? void 0 : location.display_title,
|
|
185
|
+
country: location === null || location === void 0 ? void 0 : location.country,
|
|
186
|
+
state: location === null || location === void 0 ? void 0 : location.state,
|
|
187
|
+
city: location === null || location === void 0 ? void 0 : location.city
|
|
188
|
+
};
|
|
189
|
+
};
|
|
190
|
+
|
|
191
|
+
exports.parseOkHiLocation = parseOkHiLocation;
|
|
192
|
+
//# sourceMappingURL=Util.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["generateStartDataPayload","props","authToken","applicationConfiguration","payload","style","theme","undefined","base","color","colors","primary","logo","appBar","name","app","user","phone","firstName","lastName","email","auth","context","container","version","developer","library","manifest","platform","hasLocationPermission","isLocationPermissionGranted","error","console","log","hasBackgroundLocationPermission","isBackgroundLocationPermissionGranted","permissions","location","Platform","OS","manufacturer","model","OkHiNativeModule","retrieveDeviceInfo","device","config","protectedApps","canOpenProtectedAppsSettings","streetView","backgroundColor","visible","addressTypes","home","work","getFrameUrl","DEV_FRAME_URL","PROD_FRAME_URL","SANDBOX_FRAME_URL","mode","OkHiMode","PROD","generateJavaScriptStartScript","startPayload","jsBeforeLoad","JSON","stringify","jsAfterLoad","parseOkHiLocation","id","lat","geo_point","lon","placeId","place_id","plusCode","plus_code","propertyName","property_name","streetName","street_name","title","subtitle","directions","otherInformation","other_information","url","streetViewPanoId","street_view","pano_id","streetViewPanoUrl","userId","user_id","propertyNumber","photo","displayTitle","display_title","country","state","city"],"sources":["Util.ts"],"sourcesContent":["import type { OkHiLocationManagerProps } from './types';\nimport {\n canOpenProtectedAppsSettings,\n isBackgroundLocationPermissionGranted,\n isLocationPermissionGranted,\n OkHiLocation,\n} from '../OkCore';\nimport { OkHiMode } from '../OkCore';\nimport type {\n OkHiLocationManagerStartDataPayload,\n OkHiLocationManagerStartMessage,\n} from './types';\nimport manifest from './app.json'; //TODO: fix this\nimport type { AuthApplicationConfig } from '../OkCore/_types';\nimport { Platform } from 'react-native';\nimport { OkHiNativeModule } from '../OkHiNativeModule';\n\n/**\n * @ignore\n */\nexport const generateStartDataPayload = async (\n props: OkHiLocationManagerProps,\n authToken: string,\n applicationConfiguration: AuthApplicationConfig\n): Promise<OkHiLocationManagerStartDataPayload> => {\n const payload: any = {};\n payload.style = !props.theme\n ? undefined\n : {\n base: {\n color: props.theme?.colors?.primary,\n logo: props.theme?.appBar?.logo,\n name: applicationConfiguration.app?.name,\n },\n };\n payload.user = {\n phone: props.user.phone,\n firstName: props.user.firstName,\n lastName: props.user.lastName,\n email: props.user.email,\n };\n payload.auth = {\n authToken,\n };\n payload.context = {\n container: {\n name: applicationConfiguration.app?.name,\n version: applicationConfiguration.app?.version,\n },\n developer: {\n name: applicationConfiguration.context.developer,\n },\n library: {\n name: manifest.name,\n version: manifest.version,\n },\n platform: {\n name: 'react-native',\n },\n };\n\n let hasLocationPermission: boolean | undefined;\n try {\n hasLocationPermission = await isLocationPermissionGranted();\n } catch (error) {\n console.log(error);\n }\n\n let hasBackgroundLocationPermission: boolean | undefined;\n try {\n hasBackgroundLocationPermission =\n await isBackgroundLocationPermissionGranted();\n } catch (error) {\n console.log(error);\n }\n\n if (\n typeof hasLocationPermission === 'boolean' &&\n typeof hasBackgroundLocationPermission === 'boolean'\n ) {\n payload.context.permissions = {\n location: hasBackgroundLocationPermission\n ? 'always'\n : hasLocationPermission\n ? 'whenInUse'\n : 'denied',\n };\n }\n\n if (Platform.OS === 'android') {\n const { manufacturer, model } = await OkHiNativeModule.retrieveDeviceInfo();\n payload.context.device = {\n manufacturer,\n model,\n };\n payload.context.permissions = {\n ...payload.context.permissions,\n };\n }\n payload.config = {\n protectedApps:\n Platform.OS === 'android' && (await canOpenProtectedAppsSettings()),\n streetView:\n typeof props.config?.streetView === 'boolean'\n ? props.config.streetView\n : true,\n appBar: {\n color: props.theme?.appBar?.backgroundColor,\n visible: props.config?.appBar?.visible,\n },\n addressTypes: {\n home:\n typeof props.config?.addressTypes?.home === 'boolean'\n ? props.config?.addressTypes?.home\n : true,\n work:\n typeof props.config?.addressTypes?.work === 'boolean'\n ? props.config?.addressTypes?.work\n : true,\n },\n };\n return payload;\n};\n\n/**\n * @ignore\n */\nexport const getFrameUrl = (\n applicationConfiguration: AuthApplicationConfig\n) => {\n const DEV_FRAME_URL = 'https://dev-manager-v5.okhi.io';\n const PROD_FRAME_URL = 'https://manager-v5.okhi.io';\n const SANDBOX_FRAME_URL = 'https://sandbox-manager-v5.okhi.io';\n if (applicationConfiguration.context.mode === OkHiMode.PROD) {\n return PROD_FRAME_URL;\n }\n if (applicationConfiguration.context.mode === ('dev' as any)) {\n return DEV_FRAME_URL;\n }\n return SANDBOX_FRAME_URL;\n};\n\n/**\n * @ignore\n */\nexport const generateJavaScriptStartScript = (startPayload: {\n message: OkHiLocationManagerStartMessage;\n payload: OkHiLocationManagerStartDataPayload;\n}) => {\n const jsBeforeLoad = `\n window.isNativeApp = true;\n window.NativeApp = {\n bridge: {\n receiveMessage: window.ReactNativeWebView.postMessage\n },\n data: ${JSON.stringify(startPayload)}\n }\n true;\n `;\n const jsAfterLoad = `\n window.startOkHiLocationManager({ \n receiveMessage: function(data) { window.ReactNativeWebView.postMessage(data) } }, \n ${JSON.stringify(startPayload)})\n `;\n return { jsBeforeLoad, jsAfterLoad };\n};\n\n/**\n * @ignore\n */\nexport const parseOkHiLocation = (location: any): OkHiLocation => {\n return {\n id: location?.id,\n lat: location?.geo_point?.lat,\n lon: location?.geo_point?.lon,\n placeId: location?.place_id,\n plusCode: location?.plus_code,\n propertyName: location?.property_name,\n streetName: location?.street_name,\n title: location?.title,\n subtitle: location?.subtitle,\n directions: location?.directions,\n otherInformation: location?.other_information,\n url: location?.url,\n streetViewPanoId: location?.street_view?.pano_id,\n streetViewPanoUrl: location?.street_view?.url,\n userId: location?.user_id,\n propertyNumber: location?.propertyNumber,\n photo: location?.photo,\n displayTitle: location?.display_title,\n country: location?.country,\n state: location?.state,\n city: location?.city,\n };\n};\n"],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
OkHiLocationManagerProps: true,
|
|
8
|
+
OkCollectSuccessResponse: true
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "OkCollectSuccessResponse", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _types.OkCollectSuccessResponse;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "OkHiLocationManagerProps", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function () {
|
|
19
|
+
return _types.OkHiLocationManagerProps;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
var _Helpers = require("./Helpers");
|
|
24
|
+
|
|
25
|
+
Object.keys(_Helpers).forEach(function (key) {
|
|
26
|
+
if (key === "default" || key === "__esModule") return;
|
|
27
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
28
|
+
if (key in exports && exports[key] === _Helpers[key]) return;
|
|
29
|
+
Object.defineProperty(exports, key, {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: function () {
|
|
32
|
+
return _Helpers[key];
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
var _OkHiLocationManager = require("./OkHiLocationManager");
|
|
38
|
+
|
|
39
|
+
Object.keys(_OkHiLocationManager).forEach(function (key) {
|
|
40
|
+
if (key === "default" || key === "__esModule") return;
|
|
41
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
42
|
+
if (key in exports && exports[key] === _OkHiLocationManager[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _OkHiLocationManager[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
var _types = require("./types");
|
|
52
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './Helpers';\nexport * from './OkHiLocationManager';\nexport { OkHiLocationManagerProps, OkCollectSuccessResponse } from './types';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA;;AAAA;EAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;;AACA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { ViewStyle } from 'react-native';\nimport type { OkHiException } from '../OkCore/OkHiException';\nimport type { OkHiUser, OkHiLocation } from '../OkCore/types';\nimport type { OkVerifyStartConfiguration } from '../OkVerify/types';\n\n/**\n * The OkCollect Success Response object contains information about the newly created user and location once an address has been successfully created.\n * It can be used to extract information about the address and/or start address verification process.\n */\nexport interface OkCollectSuccessResponse {\n /**\n * The [OkHiUser](https://okhi.github.io/react-native-core/interfaces/okhiuser.html) object containing information about the newly created user.\n */\n user: OkHiUser;\n /**\n * The [OkHiLocation](https://okhi.github.io/react-native-core/interfaces/okhilocation.html) object containing information about the newly created user.\n */\n location: OkHiLocation;\n\n /**\n * Starts address verification\n */\n startVerification: (config?: OkVerifyStartConfiguration) => Promise<string>;\n}\n\n/**\n * The OkHiLocationManager exposes props that you can use to customise it's functionality and appearance.\n */\nexport interface OkHiLocationManagerProps {\n /**\n * **Required:** A boolean flag that determines whether or not to show the Location Manager.\n */\n launch: boolean;\n /**\n * **Required:** A defined [OkHiUser](https://okhi.github.io/react-native-core/interfaces/okhiuser.html) object, with a mandatory \"phone\" key property.\n */\n user: OkHiUser;\n /**\n * **Optional:** A custom JSX.Element that'll be used as a loading indicator.\n */\n loader?: JSX.Element;\n /**\n * **Optional:** Used to customise the appearance of the Container that wraps the location manager.\n */\n style?: ViewStyle;\n /**\n * **Required:** A callback that'll be invoked with an {@link OkCollectSuccessResponse} once an accurate OkHi address has been successfully created.\n */\n onSuccess: (response: OkCollectSuccessResponse) => any;\n /**\n * **Required:** A callback that'll be invoked whenever an error occurs during the address creation process.\n */\n onError: (error: OkHiException) => any;\n /**\n * **Required:** A callback that'll be invoked whenever a user taps on the close button.\n */\n onCloseRequest: () => any;\n /**\n * **Optional:** An object that'll be used to customise the appearance of the Location Manager to better match your branding requirements.\n */\n theme?: {\n appBar?: {\n backgroundColor?: string;\n logo?: string;\n };\n colors?: {\n primary?: string;\n };\n };\n /**\n * **Optional:** An object that'll be used to customise the functionality of the Location Manager. This object dictates whether you want some features on or off.\n */\n config?: {\n streetView?: boolean;\n appBar?: {\n visible?: boolean;\n };\n addressTypes?: {\n home?: boolean;\n work?: boolean;\n };\n };\n}\n\n/**\n * @ignore\n */\nexport interface OkHiLocationManagerStartDataPayload {\n style?: {\n base?: {\n color?: string;\n logo?: string;\n name?: string;\n };\n };\n auth: {\n authToken: string;\n };\n context: {\n container?: {\n name?: string;\n version?: string;\n };\n developer: {\n name: string;\n };\n library: {\n name: string;\n version: string;\n };\n platform: {\n name: 'react-native';\n };\n };\n config?: {\n streetView?: boolean;\n appBar?: {\n color?: string;\n visible?: boolean;\n };\n };\n user: OkHiUser;\n}\n\n/**\n * @ignore\n */\nexport type OkHiLocationManagerStartMessage = 'select_location' | 'start_app';\n\n/**\n * @ignore\n */\nexport interface OkHiLocationManagerResponse {\n message:\n | 'location_selected'\n | 'location_created'\n | 'location_updated'\n | 'exit_app'\n | 'request_enable_protected_apps'\n | 'fatal_exit';\n payload: { user: any; location: any };\n}\n"],"mappings":""}
|