diff --git a/src/components/DataSync.svelte b/src/components/DataSync.svelte index 782753ec..126cd21e 100644 --- a/src/components/DataSync.svelte +++ b/src/components/DataSync.svelte @@ -17,6 +17,7 @@ const SCOPES = 'https://www.googleapis.com/auth/drive.appdata'; let remoteSave = null; + let timeout; $: localSaveExists = $updateTime !== null; @@ -39,9 +40,19 @@ script.onerror = handleError; script.src = 'https://apis.google.com/js/api.js'; document.body.appendChild(script); + + timeout = setTimeout(() => { + handleError(); + }, 5000); + } + + function cancelTimeout() { + console.log('cancelling timeout'); + if (timeout) clearTimeout(timeout); } function handleError() { + cancelTimeout(); console.log('error loading google drive api'); driveSignedIn.set(false); driveLoading.set(false); @@ -220,6 +231,8 @@ } function initClient() { + console.log('gapi init client'); + gapi.client .init({ apiKey: API_KEY, @@ -229,6 +242,7 @@ }) .then( function () { + cancelTimeout(); gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus); updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get()); }, diff --git a/src/components/SettingData.svelte b/src/components/SettingData.svelte index d5ea4316..80dfb161 100644 --- a/src/components/SettingData.svelte +++ b/src/components/SettingData.svelte @@ -1,5 +1,6 @@ + +
+

Delete {account.label}?

+

All todo and wish history data will be deleted

+
+ + +
+
diff --git a/src/routes/settings/_resetAccount.svelte b/src/routes/settings/_resetAccount.svelte new file mode 100644 index 00000000..6006e0c0 --- /dev/null +++ b/src/routes/settings/_resetAccount.svelte @@ -0,0 +1,16 @@ + + +
+

Reset {account.label}?

+

All todo and wish history data will be deleted

+
+ + +
+
diff --git a/src/routes/settings.svelte b/src/routes/settings/index.svelte similarity index 55% rename from src/routes/settings.svelte rename to src/routes/settings/index.svelte index 151c419a..902b82e3 100644 --- a/src/routes/settings.svelte +++ b/src/routes/settings/index.svelte @@ -1,15 +1,24 @@