From 07b92a2180ca6600f09e03a85c8ca7a06d24cbfc Mon Sep 17 00:00:00 2001
From: Paul Frazee <pfrazee@gmail.com>
Date: Wed, 15 Jun 2022 20:26:41 -0500
Subject: Implement full auth flow in iOS

---
 src/platform/urls.tsx | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

(limited to 'src/platform/urls.tsx')

diff --git a/src/platform/urls.tsx b/src/platform/urls.tsx
index 958b5232d..048c92f2e 100644
--- a/src/platform/urls.tsx
+++ b/src/platform/urls.tsx
@@ -1,4 +1,5 @@
-import {isIOS, isAndroid} from './detection'
+import {Linking} from 'react-native'
+import {isIOS, isAndroid, isNative, isWeb} from './detection'
 
 export function makeAppUrl(path = '') {
   if (isIOS) {
@@ -10,3 +11,27 @@ export function makeAppUrl(path = '') {
     return `${window.location.origin}${path}`
   }
 }
+
+export function extractHashFragment(url: string): string {
+  return url.split('#')[1] || ''
+}
+
+export async function getInitialURL(): Promise<string> {
+  if (isNative) {
+    const url = await Linking.getInitialURL()
+    if (url) {
+      return url
+    }
+    return makeAppUrl()
+  } else {
+    // @ts-ignore window exists -prf
+    return window.location.toString()
+  }
+}
+
+export function clearHash() {
+  if (isWeb) {
+    // @ts-ignore window exists -prf
+    window.location.hash = ''
+  }
+}
-- 
cgit 1.4.1

