refactor: remove CursorAccountCard component and related localization entries

- Deleted the CursorAccountCard.vue component, which handled user account login and status.
- Removed associated localization entries from catalog.json and various language files.
- Updated Home.vue to eliminate references to the removed component.
- Refactored clientApi.js to remove unused account-related API functions.
This commit is contained in:
leookun
2026-08-08 21:19:57 +08:00
parent 3cf8bdbc3c
commit c274a9db4c
32 changed files with 1225 additions and 1746 deletions
+55
View File
@@ -60,6 +60,23 @@ func InjectCursorUserInfo(email, token string) error {
return nil
}
// DisableCursorStatsigGates preserves the local-mode feature gates without
// injecting or replacing Cursor account state.
func DisableCursorStatsigGates() error {
stateDBPath, err := resolveCursorStateDBPath()
if err != nil {
return err
}
if err := os.MkdirAll(filepath.Dir(stateDBPath), 0o755); err != nil {
return fmt.Errorf("创建 Cursor 状态目录失败: %w", err)
}
if err := disableCursorStatsigGatesInDB(stateDBPath); err != nil {
return fmt.Errorf("同步 Cursor Statsig gates 失败 path=%s: %w", stateDBPath, err)
}
logger.Infof("disableCursorStatsigGates synced path=%s gates=%s", stateDBPath, strings.Join(cursorStateDisabledStatsigGates, ","))
return nil
}
func buildCursorAuthStateValues(email, token string) map[string]string {
email = strings.TrimSpace(email)
token = strings.TrimSpace(token)
@@ -131,6 +148,44 @@ func syncCursorAuthStateDB(path string, values map[string]string) error {
return nil
}
func disableCursorStatsigGatesInDB(path string) error {
db, err := sql.Open("sqlite", path)
if err != nil {
return err
}
defer db.Close()
db.SetMaxOpenConns(1)
db.SetMaxIdleConns(1)
ctx := context.Background()
if _, err := db.ExecContext(ctx, fmt.Sprintf("PRAGMA busy_timeout = %d", cursorStateSQLiteBusyTimeoutMS)); err != nil {
return err
}
if _, err := db.ExecContext(ctx, "CREATE TABLE IF NOT EXISTS ItemTable (key TEXT UNIQUE ON CONFLICT REPLACE, value BLOB)"); err != nil {
return err
}
tx, err := db.BeginTx(ctx, &sql.TxOptions{})
if err != nil {
return err
}
committed := false
defer func() {
if !committed {
_ = tx.Rollback()
}
}()
if err := disableCursorStatsigGates(ctx, tx); err != nil {
return err
}
if err := tx.Commit(); err != nil {
return err
}
committed = true
return nil
}
func disableCursorStatsigGates(ctx context.Context, tx *sql.Tx) error {
var raw []byte
err := tx.QueryRowContext(ctx, "SELECT value FROM ItemTable WHERE key = ?", cursorStateStatsigBootstrapKey).Scan(&raw)