react-native-authsignal 2.9.0 → 2.10.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.
- package/android/build.gradle +1 -1
- package/android/src/main/java/com/authsignal/react/AuthsignalModule.kt +35 -1
- package/ios/AuthsignalModule.m +3 -0
- package/ios/AuthsignalModule.swift +27 -4
- package/lib/commonjs/NativeAuthsignalModule.js.map +1 -1
- package/lib/commonjs/index.js +3 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +13 -0
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/module/NativeAuthsignalModule.js.map +1 -1
- package/lib/module/index.js +3 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +13 -0
- package/lib/module/index.web.js.map +1 -1
- package/lib/typescript/NativeAuthsignalModule.d.ts +1 -0
- package/lib/typescript/NativeAuthsignalModule.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +1 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +1 -0
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native-authsignal.podspec +1 -1
- package/src/NativeAuthsignalModule.ts +1 -0
- package/src/index.tsx +4 -0
- package/src/index.web.tsx +19 -0
package/android/build.gradle
CHANGED
|
@@ -4,6 +4,7 @@ import android.app.Activity
|
|
|
4
4
|
import android.content.ActivityNotFoundException
|
|
5
5
|
import android.content.Intent
|
|
6
6
|
import android.net.Uri
|
|
7
|
+
import com.authsignal.DeviceCache
|
|
7
8
|
import com.authsignal.TokenCache.Companion.shared
|
|
8
9
|
import com.authsignal.react.AuthenticationActivity.Companion.authenticateUsingBrowser
|
|
9
10
|
import com.facebook.react.bridge.ActivityEventListener
|
|
@@ -11,15 +12,21 @@ import com.facebook.react.bridge.Promise
|
|
|
11
12
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
12
13
|
import com.facebook.react.bridge.ReactMethod
|
|
13
14
|
import com.facebook.react.module.annotations.ReactModule
|
|
15
|
+
import kotlinx.coroutines.CoroutineScope
|
|
16
|
+
import kotlinx.coroutines.Dispatchers
|
|
17
|
+
import kotlinx.coroutines.SupervisorJob
|
|
18
|
+
import kotlinx.coroutines.launch
|
|
14
19
|
import java.net.URLDecoder
|
|
15
20
|
|
|
16
21
|
@ReactModule(name = AuthsignalModule.NAME)
|
|
17
22
|
class AuthsignalModule(private val reactContext: ReactApplicationContext) :
|
|
18
23
|
NativeAuthsignalModuleSpec(reactContext), ActivityEventListener {
|
|
24
|
+
private val coroutineScope = CoroutineScope(SupervisorJob() + Dispatchers.Main.immediate)
|
|
19
25
|
private var launchPromise: Promise? = null
|
|
20
26
|
|
|
21
27
|
init {
|
|
22
28
|
reactContext.addActivityEventListener(this)
|
|
29
|
+
DeviceCache.shared.initialize(reactContext.applicationContext)
|
|
23
30
|
}
|
|
24
31
|
|
|
25
32
|
@ReactMethod
|
|
@@ -37,7 +44,7 @@ class AuthsignalModule(private val reactContext: ReactApplicationContext) :
|
|
|
37
44
|
}
|
|
38
45
|
|
|
39
46
|
val activity = reactContext.currentActivity
|
|
40
|
-
val parsedUrl =
|
|
47
|
+
val parsedUrl = buildLaunchUri(url)
|
|
41
48
|
this.launchPromise = promise
|
|
42
49
|
|
|
43
50
|
try {
|
|
@@ -92,10 +99,37 @@ class AuthsignalModule(private val reactContext: ReactApplicationContext) :
|
|
|
92
99
|
this@AuthsignalModule.launchPromise = null
|
|
93
100
|
}
|
|
94
101
|
|
|
102
|
+
@ReactMethod
|
|
103
|
+
override fun getDeviceId(promise: Promise) {
|
|
104
|
+
coroutineScope.launch {
|
|
105
|
+
val deviceId = DeviceCache.shared.getDefaultDeviceId()
|
|
106
|
+
promise.resolve(deviceId)
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
95
110
|
override fun onNewIntent(intent: Intent) {
|
|
96
111
|
}
|
|
97
112
|
|
|
113
|
+
private fun buildLaunchUri(url: String): Uri {
|
|
114
|
+
val parsedUrl = Uri.parse(url)
|
|
115
|
+
val builder = parsedUrl.buildUpon().clearQuery()
|
|
116
|
+
|
|
117
|
+
for (queryName in parsedUrl.queryParameterNames) {
|
|
118
|
+
if (queryName == NATIVE_SCHEME_QUERY_PARAM) continue
|
|
119
|
+
|
|
120
|
+
for (queryValue in parsedUrl.getQueryParameters(queryName)) {
|
|
121
|
+
builder.appendQueryParameter(queryName, queryValue)
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
builder.appendQueryParameter(NATIVE_SCHEME_QUERY_PARAM, CALLBACK_SCHEME)
|
|
126
|
+
|
|
127
|
+
return builder.build()
|
|
128
|
+
}
|
|
129
|
+
|
|
98
130
|
companion object {
|
|
99
131
|
const val NAME = "AuthsignalModule"
|
|
132
|
+
private const val CALLBACK_SCHEME = "authsignal"
|
|
133
|
+
private const val NATIVE_SCHEME_QUERY_PARAM = "nativeScheme"
|
|
100
134
|
}
|
|
101
135
|
}
|
package/ios/AuthsignalModule.m
CHANGED
|
@@ -6,6 +6,8 @@ import Security
|
|
|
6
6
|
|
|
7
7
|
@objc(AuthsignalModule)
|
|
8
8
|
class AuthsignalModule: NSObject, ASWebAuthenticationPresentationContextProviding {
|
|
9
|
+
private let callbackScheme = "authsignal"
|
|
10
|
+
private let nativeSchemeQueryItemName = "nativeScheme"
|
|
9
11
|
var session: ASWebAuthenticationSession?
|
|
10
12
|
|
|
11
13
|
@objc static func requiresMainQueueSetup() -> Bool {
|
|
@@ -21,15 +23,13 @@ class AuthsignalModule: NSObject, ASWebAuthenticationPresentationContextProvidin
|
|
|
21
23
|
resolve: @escaping RCTPromiseResolveBlock,
|
|
22
24
|
reject: @escaping RCTPromiseRejectBlock
|
|
23
25
|
) -> Void {
|
|
24
|
-
let
|
|
25
|
-
|
|
26
|
-
guard let authUrl = URL(string: url as String) else {
|
|
26
|
+
guard let authUrl = buildLaunchURL(from: url as String) else {
|
|
27
27
|
reject("launchError", "Invalid URL", nil)
|
|
28
28
|
|
|
29
29
|
return
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
let authenticationSession = ASWebAuthenticationSession(url: authUrl, callbackURLScheme:
|
|
32
|
+
let authenticationSession = ASWebAuthenticationSession(url: authUrl, callbackURLScheme: callbackScheme) { callbackURL, error in
|
|
33
33
|
if let error {
|
|
34
34
|
if self.isCanceledLoginError(error) {
|
|
35
35
|
resolve(nil)
|
|
@@ -75,10 +75,33 @@ class AuthsignalModule: NSObject, ASWebAuthenticationPresentationContextProvidin
|
|
|
75
75
|
|
|
76
76
|
resolve("token_set")
|
|
77
77
|
}
|
|
78
|
+
|
|
79
|
+
@objc func getDeviceId(
|
|
80
|
+
_ resolve: @escaping RCTPromiseResolveBlock,
|
|
81
|
+
reject: @escaping RCTPromiseRejectBlock
|
|
82
|
+
) -> Void {
|
|
83
|
+
Task {
|
|
84
|
+
let deviceId = await DeviceCache.shared.getDefaultDeviceID()
|
|
85
|
+
resolve(deviceId)
|
|
86
|
+
}
|
|
87
|
+
}
|
|
78
88
|
|
|
79
89
|
private func isCanceledLoginError(_ error: Error) -> Bool {
|
|
80
90
|
(error as NSError).code == ASWebAuthenticationSessionError.canceledLogin.rawValue
|
|
81
91
|
}
|
|
92
|
+
|
|
93
|
+
private func buildLaunchURL(from urlString: String) -> URL? {
|
|
94
|
+
guard let authUrl = URL(string: urlString),
|
|
95
|
+
var components = URLComponents(url: authUrl, resolvingAgainstBaseURL: false) else {
|
|
96
|
+
return nil
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
var queryItems = components.queryItems?.filter { $0.name != nativeSchemeQueryItemName } ?? []
|
|
100
|
+
queryItems.append(URLQueryItem(name: nativeSchemeQueryItemName, value: callbackScheme))
|
|
101
|
+
components.queryItems = queryItems
|
|
102
|
+
|
|
103
|
+
return components.url
|
|
104
|
+
}
|
|
82
105
|
|
|
83
106
|
func presentationAnchor(for session: ASWebAuthenticationSession) -> ASPresentationAnchor {
|
|
84
107
|
if let windowScene = UIApplication.shared.connectedScenes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAqE,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalModule.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAqE,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAQtDC,gCAAmB,CAACC,GAAG,CAAO,kBAAkB,CAAC","ignoreList":[]}
|
package/lib/commonjs/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_getNativeModule","require","_NativeAuthsignalModule","_interopRequireDefault","_email","_passkey","_push","_sms","_totp","_qr","_whatsapp","_inapp","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_error","e","__esModule","default","AuthsignalModule","getNativeModule","NativeAuthsignalModule","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","__DEV__","input","passkey","AuthsignalPasskey","email","AuthsignalEmail","push","AuthsignalPush","qr","AuthsignalQrCode","inapp","AuthsignalInApp","sms","AuthsignalSms","totp","AuthsignalTotp","whatsapp","AuthsignalWhatsapp","setToken","token","launch","url","_options"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,GAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AAGA,IAAAW,MAAA,GAAAX,OAAA;AAAAY,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,MAAA,GAAAxB,OAAA;AAAoC,SAAAE,uBAAAuB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,MAAMG,gBAAgB,GAAG,IAAAC,gCAAe,EACtC,kBAAkB,EAClBC,+BACF,CAAC;AASM,MAAMC,UAAU,CAAC;EActBC,WAAWA,CAAC;IACVC,QAAQ;IACRC,OAAO,GAAG,+BAA+B;IACzCC,QAAQ;IACRC,aAAa,GAAGC;EACD,CAAC,EAAE;IAClB,IAAI,CAACJ,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,aAAa,GAAGA,aAAa;IAElC,MAAME,KAAK,GAAG;MAAEL,QAAQ;MAAEC,OAAO;MAAEC,QAAQ;MAAEC;IAAc,CAAC;IAE5D,IAAI,CAACG,OAAO,GAAG,IAAIC,0BAAiB,CAACF,KAAK,CAAC;IAC3C,IAAI,CAACG,KAAK,GAAG,IAAIC,sBAAe,CAACJ,KAAK,CAAC;IACvC,IAAI,CAACK,IAAI,GAAG,IAAIC,oBAAc,CAACN,KAAK,CAAC;IACrC,IAAI,CAACO,EAAE,GAAG,IAAIC,oBAAgB,CAACR,KAAK,CAAC;IACrC,IAAI,CAACS,KAAK,GAAG,IAAIC,sBAAe,CAACV,KAAK,CAAC;IACvC,IAAI,CAACW,GAAG,GAAG,IAAIC,kBAAa,CAACZ,KAAK,CAAC;IACnC,IAAI,CAACa,IAAI,GAAG,IAAIC,oBAAc,CAACd,KAAK,CAAC;IACrC,IAAI,CAACe,QAAQ,GAAG,IAAIC,4BAAkB,CAAChB,KAAK,CAAC;EAC/C;EAEA,MAAMiB,QAAQA,CAACC,KAAa,EAAiB;IAC3C,MAAM5B,gBAAgB,CAAC2B,QAAQ,CAACC,KAAK,CAAC;EACxC;EAEA,MAAMC,MAAMA,CAACC,GAAW,EAAEC,QAAwB,EAA0B;IAC1E,OAAO,MAAMF,MAAM,CAACC,GAAG,CAAC;EAC1B;AACF;
|
|
1
|
+
{"version":3,"names":["_getNativeModule","require","_NativeAuthsignalModule","_interopRequireDefault","_email","_passkey","_push","_sms","_totp","_qr","_whatsapp","_inapp","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_error","e","__esModule","default","AuthsignalModule","getNativeModule","NativeAuthsignalModule","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","__DEV__","input","passkey","AuthsignalPasskey","email","AuthsignalEmail","push","AuthsignalPush","qr","AuthsignalQrCode","inapp","AuthsignalInApp","sms","AuthsignalSms","totp","AuthsignalTotp","whatsapp","AuthsignalWhatsapp","setToken","token","launch","url","_options","getDeviceId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAC,sBAAA,CAAAF,OAAA;AAGA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,QAAA,GAAAJ,OAAA;AACA,IAAAK,KAAA,GAAAL,OAAA;AACA,IAAAM,IAAA,GAAAN,OAAA;AACA,IAAAO,KAAA,GAAAP,OAAA;AACA,IAAAQ,GAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AAGA,IAAAW,MAAA,GAAAX,OAAA;AAAAY,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,MAAA,GAAAxB,OAAA;AAAoC,SAAAE,uBAAAuB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,MAAMG,gBAAgB,GAAG,IAAAC,gCAAe,EACtC,kBAAkB,EAClBC,+BACF,CAAC;AASM,MAAMC,UAAU,CAAC;EActBC,WAAWA,CAAC;IACVC,QAAQ;IACRC,OAAO,GAAG,+BAA+B;IACzCC,QAAQ;IACRC,aAAa,GAAGC;EACD,CAAC,EAAE;IAClB,IAAI,CAACJ,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,aAAa,GAAGA,aAAa;IAElC,MAAME,KAAK,GAAG;MAAEL,QAAQ;MAAEC,OAAO;MAAEC,QAAQ;MAAEC;IAAc,CAAC;IAE5D,IAAI,CAACG,OAAO,GAAG,IAAIC,0BAAiB,CAACF,KAAK,CAAC;IAC3C,IAAI,CAACG,KAAK,GAAG,IAAIC,sBAAe,CAACJ,KAAK,CAAC;IACvC,IAAI,CAACK,IAAI,GAAG,IAAIC,oBAAc,CAACN,KAAK,CAAC;IACrC,IAAI,CAACO,EAAE,GAAG,IAAIC,oBAAgB,CAACR,KAAK,CAAC;IACrC,IAAI,CAACS,KAAK,GAAG,IAAIC,sBAAe,CAACV,KAAK,CAAC;IACvC,IAAI,CAACW,GAAG,GAAG,IAAIC,kBAAa,CAACZ,KAAK,CAAC;IACnC,IAAI,CAACa,IAAI,GAAG,IAAIC,oBAAc,CAACd,KAAK,CAAC;IACrC,IAAI,CAACe,QAAQ,GAAG,IAAIC,4BAAkB,CAAChB,KAAK,CAAC;EAC/C;EAEA,MAAMiB,QAAQA,CAACC,KAAa,EAAiB;IAC3C,MAAM5B,gBAAgB,CAAC2B,QAAQ,CAACC,KAAK,CAAC;EACxC;EAEA,MAAMC,MAAMA,CAACC,GAAW,EAAEC,QAAwB,EAA0B;IAC1E,OAAO,MAAMF,MAAM,CAACC,GAAG,CAAC;EAC1B;EAEA,MAAME,WAAWA,CAAA,EAAoB;IACnC,OAAOhC,gBAAgB,CAACgC,WAAW,CAAC,CAAC;EACvC;AACF;AAACxC,OAAA,CAAAW,UAAA,GAAAA,UAAA;AAEM,SAAS0B,MAAMA,CACpBC,GAAW,EACXC,QAAwB,EACA;EACxB,OAAO/B,gBAAgB,CAAC6B,MAAM,CAACC,GAAG,CAAC;AACrC","ignoreList":[]}
|
|
@@ -76,6 +76,18 @@ class Authsignal {
|
|
|
76
76
|
async launch(url, options) {
|
|
77
77
|
return await launch(url, options);
|
|
78
78
|
}
|
|
79
|
+
async getDeviceId() {
|
|
80
|
+
if (typeof window === 'undefined' || !window.localStorage) {
|
|
81
|
+
return crypto.randomUUID();
|
|
82
|
+
}
|
|
83
|
+
const existingId = localStorage.getItem(DEVICE_ID_KEY);
|
|
84
|
+
if (existingId) {
|
|
85
|
+
return existingId;
|
|
86
|
+
}
|
|
87
|
+
const newId = crypto.randomUUID();
|
|
88
|
+
localStorage.setItem(DEVICE_ID_KEY, newId);
|
|
89
|
+
return newId;
|
|
90
|
+
}
|
|
79
91
|
}
|
|
80
92
|
exports.Authsignal = Authsignal;
|
|
81
93
|
function launch(url, options) {
|
|
@@ -104,4 +116,5 @@ function launch(url, options) {
|
|
|
104
116
|
}
|
|
105
117
|
return Promise.resolve(null);
|
|
106
118
|
}
|
|
119
|
+
const DEVICE_ID_KEY = '@as_device_id';
|
|
107
120
|
//# sourceMappingURL=index.web.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_webClient","require","_email","_passkey","_sms","_totp","_whatsapp","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_error","_lastClient","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","input","passkey","AuthsignalPasskey","email","AuthsignalEmail","sms","AuthsignalSms","totp","AuthsignalTotp","whatsapp","AuthsignalWhatsapp","setToken","token","client","getOrCreateWebClient","launch","url","options","mode","Promise","resolve","then","result","
|
|
1
|
+
{"version":3,"names":["_webClient","require","_email","_passkey","_sms","_totp","_whatsapp","_types","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_error","_lastClient","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","input","passkey","AuthsignalPasskey","email","AuthsignalEmail","sms","AuthsignalSms","totp","AuthsignalTotp","whatsapp","AuthsignalWhatsapp","setToken","token","client","getOrCreateWebClient","launch","url","options","getDeviceId","window","localStorage","crypto","randomUUID","existingId","getItem","DEVICE_ID_KEY","newId","setItem","mode","Promise","resolve","then","result","open"],"sourceRoot":"../../src","sources":["index.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalModule.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAA0B,cAAc;
|
|
1
|
+
{"version":3,"names":["TurboModuleRegistry","get"],"sourceRoot":"../../src","sources":["NativeAuthsignalModule.ts"],"mappings":"AAAA,SAASA,mBAAmB,QAA0B,cAAc;AAQpE,eAAeA,mBAAmB,CAACC,GAAG,CAAO,kBAAkB,CAAC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getNativeModule","NativeAuthsignalModule","AuthsignalEmail","AuthsignalPasskey","AuthsignalPush","AuthsignalSms","AuthsignalTotp","AuthsignalQrCode","AuthsignalWhatsapp","AuthsignalInApp","ErrorCode","AuthsignalModule","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","__DEV__","input","passkey","email","push","qr","inapp","sms","totp","whatsapp","setToken","token","launch","url","_options"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,eAAe,QAAQ,mBAAmB;AACnD,OAAOC,sBAAsB,MAEtB,0BAA0B;AACjC,SAASC,eAAe,QAAQ,SAAS;AACzC,SAASC,iBAAiB,QAAQ,WAAW;AAC7C,SAASC,cAAc,QAAQ,QAAQ;AACvC,SAASC,aAAa,QAAQ,OAAO;AACrC,SAASC,cAAc,QAAQ,QAAQ;AACvC,SAASC,gBAAgB,QAAQ,MAAM;AACvC,SAASC,kBAAkB,QAAQ,YAAY;AAC/C,SAASC,eAAe,QAAQ,SAAS;AAGzC,cAAc,SAAS;AACvB,SAASC,SAAS,QAAQ,SAAS;AAEnC,MAAMC,gBAAgB,GAAGX,eAAe,CACtC,kBAAkB,EAClBC,sBACF,CAAC;AASD,OAAO,MAAMW,UAAU,CAAC;EActBC,WAAWA,CAAC;IACVC,QAAQ;IACRC,OAAO,GAAG,+BAA+B;IACzCC,QAAQ;IACRC,aAAa,GAAGC;EACD,CAAC,EAAE;IAClB,IAAI,CAACJ,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,aAAa,GAAGA,aAAa;IAElC,MAAME,KAAK,GAAG;MAAEL,QAAQ;MAAEC,OAAO;MAAEC,QAAQ;MAAEC;IAAc,CAAC;IAE5D,IAAI,CAACG,OAAO,GAAG,IAAIjB,iBAAiB,CAACgB,KAAK,CAAC;IAC3C,IAAI,CAACE,KAAK,GAAG,IAAInB,eAAe,CAACiB,KAAK,CAAC;IACvC,IAAI,CAACG,IAAI,GAAG,IAAIlB,cAAc,CAACe,KAAK,CAAC;IACrC,IAAI,CAACI,EAAE,GAAG,IAAIhB,gBAAgB,CAACY,KAAK,CAAC;IACrC,IAAI,CAACK,KAAK,GAAG,IAAIf,eAAe,CAACU,KAAK,CAAC;IACvC,IAAI,CAACM,GAAG,GAAG,IAAIpB,aAAa,CAACc,KAAK,CAAC;IACnC,IAAI,CAACO,IAAI,GAAG,IAAIpB,cAAc,CAACa,KAAK,CAAC;IACrC,IAAI,CAACQ,QAAQ,GAAG,IAAInB,kBAAkB,CAACW,KAAK,CAAC;EAC/C;EAEA,MAAMS,QAAQA,CAACC,KAAa,EAAiB;IAC3C,MAAMlB,gBAAgB,CAACiB,QAAQ,CAACC,KAAK,CAAC;EACxC;EAEA,MAAMC,MAAMA,CAACC,GAAW,EAAEC,QAAwB,EAA0B;IAC1E,OAAO,MAAMF,MAAM,CAACC,GAAG,CAAC;EAC1B;AACF;AAEA,OAAO,
|
|
1
|
+
{"version":3,"names":["getNativeModule","NativeAuthsignalModule","AuthsignalEmail","AuthsignalPasskey","AuthsignalPush","AuthsignalSms","AuthsignalTotp","AuthsignalQrCode","AuthsignalWhatsapp","AuthsignalInApp","ErrorCode","AuthsignalModule","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","__DEV__","input","passkey","email","push","qr","inapp","sms","totp","whatsapp","setToken","token","launch","url","_options","getDeviceId"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"AAAA,SAASA,eAAe,QAAQ,mBAAmB;AACnD,OAAOC,sBAAsB,MAEtB,0BAA0B;AACjC,SAASC,eAAe,QAAQ,SAAS;AACzC,SAASC,iBAAiB,QAAQ,WAAW;AAC7C,SAASC,cAAc,QAAQ,QAAQ;AACvC,SAASC,aAAa,QAAQ,OAAO;AACrC,SAASC,cAAc,QAAQ,QAAQ;AACvC,SAASC,gBAAgB,QAAQ,MAAM;AACvC,SAASC,kBAAkB,QAAQ,YAAY;AAC/C,SAASC,eAAe,QAAQ,SAAS;AAGzC,cAAc,SAAS;AACvB,SAASC,SAAS,QAAQ,SAAS;AAEnC,MAAMC,gBAAgB,GAAGX,eAAe,CACtC,kBAAkB,EAClBC,sBACF,CAAC;AASD,OAAO,MAAMW,UAAU,CAAC;EActBC,WAAWA,CAAC;IACVC,QAAQ;IACRC,OAAO,GAAG,+BAA+B;IACzCC,QAAQ;IACRC,aAAa,GAAGC;EACD,CAAC,EAAE;IAClB,IAAI,CAACJ,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACE,aAAa,GAAGA,aAAa;IAElC,MAAME,KAAK,GAAG;MAAEL,QAAQ;MAAEC,OAAO;MAAEC,QAAQ;MAAEC;IAAc,CAAC;IAE5D,IAAI,CAACG,OAAO,GAAG,IAAIjB,iBAAiB,CAACgB,KAAK,CAAC;IAC3C,IAAI,CAACE,KAAK,GAAG,IAAInB,eAAe,CAACiB,KAAK,CAAC;IACvC,IAAI,CAACG,IAAI,GAAG,IAAIlB,cAAc,CAACe,KAAK,CAAC;IACrC,IAAI,CAACI,EAAE,GAAG,IAAIhB,gBAAgB,CAACY,KAAK,CAAC;IACrC,IAAI,CAACK,KAAK,GAAG,IAAIf,eAAe,CAACU,KAAK,CAAC;IACvC,IAAI,CAACM,GAAG,GAAG,IAAIpB,aAAa,CAACc,KAAK,CAAC;IACnC,IAAI,CAACO,IAAI,GAAG,IAAIpB,cAAc,CAACa,KAAK,CAAC;IACrC,IAAI,CAACQ,QAAQ,GAAG,IAAInB,kBAAkB,CAACW,KAAK,CAAC;EAC/C;EAEA,MAAMS,QAAQA,CAACC,KAAa,EAAiB;IAC3C,MAAMlB,gBAAgB,CAACiB,QAAQ,CAACC,KAAK,CAAC;EACxC;EAEA,MAAMC,MAAMA,CAACC,GAAW,EAAEC,QAAwB,EAA0B;IAC1E,OAAO,MAAMF,MAAM,CAACC,GAAG,CAAC;EAC1B;EAEA,MAAME,WAAWA,CAAA,EAAoB;IACnC,OAAOtB,gBAAgB,CAACsB,WAAW,CAAC,CAAC;EACvC;AACF;AAEA,OAAO,SAASH,MAAMA,CACpBC,GAAW,EACXC,QAAwB,EACA;EACxB,OAAOrB,gBAAgB,CAACmB,MAAM,CAACC,GAAG,CAAC;AACrC","ignoreList":[]}
|
package/lib/module/index.web.js
CHANGED
|
@@ -47,6 +47,18 @@ export class Authsignal {
|
|
|
47
47
|
async launch(url, options) {
|
|
48
48
|
return await launch(url, options);
|
|
49
49
|
}
|
|
50
|
+
async getDeviceId() {
|
|
51
|
+
if (typeof window === 'undefined' || !window.localStorage) {
|
|
52
|
+
return crypto.randomUUID();
|
|
53
|
+
}
|
|
54
|
+
const existingId = localStorage.getItem(DEVICE_ID_KEY);
|
|
55
|
+
if (existingId) {
|
|
56
|
+
return existingId;
|
|
57
|
+
}
|
|
58
|
+
const newId = crypto.randomUUID();
|
|
59
|
+
localStorage.setItem(DEVICE_ID_KEY, newId);
|
|
60
|
+
return newId;
|
|
61
|
+
}
|
|
50
62
|
}
|
|
51
63
|
export function launch(url, options) {
|
|
52
64
|
if (_lastClient) {
|
|
@@ -74,4 +86,5 @@ export function launch(url, options) {
|
|
|
74
86
|
}
|
|
75
87
|
return Promise.resolve(null);
|
|
76
88
|
}
|
|
89
|
+
const DEVICE_ID_KEY = '@as_device_id';
|
|
77
90
|
//# sourceMappingURL=index.web.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getOrCreateWebClient","AuthsignalEmail","AuthsignalPasskey","AuthsignalSms","AuthsignalTotp","AuthsignalWhatsapp","ErrorCode","_lastClient","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","input","passkey","email","sms","totp","whatsapp","setToken","token","client","launch","url","options","mode","Promise","resolve","then","result","
|
|
1
|
+
{"version":3,"names":["getOrCreateWebClient","AuthsignalEmail","AuthsignalPasskey","AuthsignalSms","AuthsignalTotp","AuthsignalWhatsapp","ErrorCode","_lastClient","Authsignal","constructor","tenantID","baseURL","deviceID","enableLogging","input","passkey","email","sms","totp","whatsapp","setToken","token","client","launch","url","options","getDeviceId","window","localStorage","crypto","randomUUID","existingId","getItem","DEVICE_ID_KEY","newId","setItem","mode","Promise","resolve","then","result","open"],"sourceRoot":"../../src","sources":["index.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@ import { type TurboModule } from 'react-native';
|
|
|
2
2
|
export interface Spec extends TurboModule {
|
|
3
3
|
setToken(token: string | null): Promise<string>;
|
|
4
4
|
launch(url: string): Promise<string | null>;
|
|
5
|
+
getDeviceId(): Promise<string>;
|
|
5
6
|
}
|
|
6
7
|
declare const _default: Spec | null;
|
|
7
8
|
export default _default;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NativeAuthsignalModule.d.ts","sourceRoot":"","sources":["../../src/NativeAuthsignalModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NativeAuthsignalModule.d.ts","sourceRoot":"","sources":["../../src/NativeAuthsignalModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAErE,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5C,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;CAChC;;AAED,wBAAiE"}
|
|
@@ -30,6 +30,7 @@ export declare class Authsignal {
|
|
|
30
30
|
constructor({ tenantID, baseURL, deviceID, enableLogging, }: ConstructorArgs);
|
|
31
31
|
setToken(token: string): Promise<void>;
|
|
32
32
|
launch(url: string, _options?: LaunchOptions): Promise<string | null>;
|
|
33
|
+
getDeviceId(): Promise<string>;
|
|
33
34
|
}
|
|
34
35
|
export declare function launch(url: string, _options?: LaunchOptions): Promise<string | null>;
|
|
35
36
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,qBAAa,UAAU;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IAEvB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,EAAE,EAAE,gBAAgB,CAAC;IACrB,KAAK,EAAE,eAAe,CAAC;IACvB,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;gBAEjB,EACV,QAAQ,EACR,OAAyC,EACzC,QAAQ,EACR,aAAuB,GACxB,EAAE,eAAe;IAiBZ,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,MAAM,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAOpC,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,qBAAa,UAAU;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IAEvB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,cAAc,CAAC;IACrB,EAAE,EAAE,gBAAgB,CAAC;IACrB,KAAK,EAAE,eAAe,CAAC;IACvB,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;gBAEjB,EACV,QAAQ,EACR,OAAyC,EACzC,QAAQ,EACR,aAAuB,GACxB,EAAE,eAAe;IAiBZ,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIrE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;CAGrC;AAED,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,aAAa,GACvB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAExB"}
|
|
@@ -24,6 +24,7 @@ export declare class Authsignal {
|
|
|
24
24
|
constructor({ tenantID, baseURL, deviceID, enableLogging, }: ConstructorArgs);
|
|
25
25
|
setToken(token: string): Promise<void>;
|
|
26
26
|
launch(url: string, options?: LaunchOptions): Promise<string | null>;
|
|
27
|
+
getDeviceId(): Promise<string>;
|
|
27
28
|
}
|
|
28
29
|
export declare function launch(url: string, options?: LaunchOptions): Promise<string | null>;
|
|
29
30
|
//# sourceMappingURL=index.web.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../src/index.web.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAQD,qBAAa,UAAU;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IAEvB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;gBAEjB,EACV,QAAQ,EACR,OAAyC,EACzC,QAAQ,EACR,aAAqB,GACtB,EAAE,eAAe;IAgBZ,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.web.d.ts","sourceRoot":"","sources":["../../src/index.web.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAE7C,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,UAAU,eAAe;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAQD,qBAAa,UAAU;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IAEvB,KAAK,EAAE,eAAe,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,GAAG,EAAE,aAAa,CAAC;IACnB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,kBAAkB,CAAC;gBAEjB,EACV,QAAQ,EACR,OAAyC,EACzC,QAAQ,EACR,aAAqB,GACtB,EAAE,eAAe;IAgBZ,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAUtC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAIpE,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;CAgBrC;AAED,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwBxB"}
|
package/package.json
CHANGED
|
@@ -18,7 +18,7 @@ Pod::Spec.new do |s|
|
|
|
18
18
|
s.private_header_files = "ios/**/*.h"
|
|
19
19
|
|
|
20
20
|
s.dependency "React-Core"
|
|
21
|
-
s.dependency 'Authsignal', '2.
|
|
21
|
+
s.dependency 'Authsignal', '2.6.0'
|
|
22
22
|
|
|
23
23
|
# Use install_modules_dependencies helper to install the dependencies if React Native version >=0.71.0.
|
|
24
24
|
# See https://github.com/facebook/react-native/blob/febf6b7f33fdb4904669f99d795eba4c0f95d7bf/scripts/cocoapods/new_architecture.rb#L79.
|
|
@@ -3,6 +3,7 @@ import { TurboModuleRegistry, type TurboModule } from 'react-native';
|
|
|
3
3
|
export interface Spec extends TurboModule {
|
|
4
4
|
setToken(token: string | null): Promise<string>;
|
|
5
5
|
launch(url: string): Promise<string | null>;
|
|
6
|
+
getDeviceId(): Promise<string>;
|
|
6
7
|
}
|
|
7
8
|
|
|
8
9
|
export default TurboModuleRegistry.get<Spec>('AuthsignalModule');
|
package/src/index.tsx
CHANGED
|
@@ -70,6 +70,10 @@ export class Authsignal {
|
|
|
70
70
|
async launch(url: string, _options?: LaunchOptions): Promise<string | null> {
|
|
71
71
|
return await launch(url);
|
|
72
72
|
}
|
|
73
|
+
|
|
74
|
+
async getDeviceId(): Promise<string> {
|
|
75
|
+
return AuthsignalModule.getDeviceId();
|
|
76
|
+
}
|
|
73
77
|
}
|
|
74
78
|
|
|
75
79
|
export function launch(
|
package/src/index.web.tsx
CHANGED
|
@@ -67,6 +67,23 @@ export class Authsignal {
|
|
|
67
67
|
async launch(url: string, options?: LaunchOptions): Promise<string | null> {
|
|
68
68
|
return await launch(url, options);
|
|
69
69
|
}
|
|
70
|
+
|
|
71
|
+
async getDeviceId(): Promise<string> {
|
|
72
|
+
if (typeof window === 'undefined' || !window.localStorage) {
|
|
73
|
+
return crypto.randomUUID();
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
const existingId = localStorage.getItem(DEVICE_ID_KEY);
|
|
77
|
+
|
|
78
|
+
if (existingId) {
|
|
79
|
+
return existingId;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
const newId = crypto.randomUUID();
|
|
83
|
+
localStorage.setItem(DEVICE_ID_KEY, newId);
|
|
84
|
+
|
|
85
|
+
return newId;
|
|
86
|
+
}
|
|
70
87
|
}
|
|
71
88
|
|
|
72
89
|
export function launch(
|
|
@@ -97,3 +114,5 @@ export function launch(
|
|
|
97
114
|
|
|
98
115
|
return Promise.resolve(null);
|
|
99
116
|
}
|
|
117
|
+
|
|
118
|
+
const DEVICE_ID_KEY = '@as_device_id';
|