Procházet zdrojové kódy

updated config sync settings tab

Eugene před 2 roky
rodič
revize
6a458d8b9b

+ 8 - 0
tabby-core/src/services/config.service.ts

@@ -406,6 +406,14 @@ export class ConfigService {
             }
             config.version = 6
         }
+        if (config.version < 7) {
+            if (!config.configSync?.host || config.configSync?.host === 'https://api.tabby.sh') {
+                config.configSync ??= {}
+                delete config.configSync.host
+                delete config.configSync.token
+            }
+            config.version = 7
+        }
     }
 
     private async maybeDecryptConfig (store) {

+ 6 - 1
tabby-settings/src/components/configSyncSettingsTab.component.pug

@@ -20,7 +20,7 @@ ul.nav-tabs(ngbNav, #nav='ngbNav')
                     )
                         i.fas.fa-external-link-alt
 
-            .form-line
+            .form-line(*ngIf='config.store.configSync.token')
                 .header
                     .title(translate) Secret sync token
                     .description(translate) Get it from the Tabby Web settings window
@@ -36,6 +36,11 @@ ul.nav-tabs(ngbNav, #nav='ngbNav')
                         i.fas.fa-fw.fa-check.text-success(*ngIf='connectionSuccessful')
                         i.fas.fa-fw.fa-exclamation-triangle.text-danger(*ngIf='connectionSuccessful === false')
 
+            .alert.alert-info.d-flex.align-items-center
+                .me-auto
+                    span(translate) Config sync requires an instance of the Tabby Web service.
+                    a.ml-1((click)='openTabbyWebInfo()', href='#', translate) Learn more
+
             ng-container(*ngIf='config.store.configSync.token')
                 .alert.alert-danger(*ngIf='connectionSuccessful === false')
                     i.fas.fa-exclamation-triangle

+ 4 - 0
tabby-settings/src/components/configSyncSettingsTab.component.ts

@@ -141,4 +141,8 @@ export class ConfigSyncSettingsTabComponent extends BaseComponent {
             this.platform.openExternal(this.config.store.configSync.host)
         }
     }
+
+    openTabbyWebInfo () {
+        this.platform.openExternal('https://github.com/Eugeny/tabby-web')
+    }
 }

+ 2 - 2
tabby-settings/src/config.ts

@@ -4,8 +4,8 @@ import { ConfigProvider, Platform } from 'tabby-core'
 export class SettingsConfigProvider extends ConfigProvider {
     defaults = {
         configSync: {
-            host: 'https://api.tabby.sh',
-            token: '',
+            host: null,
+            token: null,
             configID: null,
             auto: false,
             parts: {