opencode-gemini-cli-oauth 1.1.21 → 1.2.1
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/dist/constants.d.ts +9 -20
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +18 -29
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts +4 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -14
- package/dist/index.js.map +1 -1
- package/dist/oauth.d.ts +27 -0
- package/dist/oauth.d.ts.map +1 -0
- package/dist/oauth.js +170 -0
- package/dist/oauth.js.map +1 -0
- package/dist/plugin.d.ts +11 -28
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +170 -70
- package/dist/plugin.js.map +1 -1
- package/dist/types.d.ts +5 -44
- package/dist/types.d.ts.map +1 -1
- package/package.json +23 -21
- package/dist/auth/account-manager.d.ts +0 -16
- package/dist/auth/account-manager.d.ts.map +0 -1
- package/dist/auth/account-manager.js +0 -63
- package/dist/auth/account-manager.js.map +0 -1
- package/dist/auth/oauth.d.ts +0 -27
- package/dist/auth/oauth.d.ts.map +0 -1
- package/dist/auth/oauth.js +0 -89
- package/dist/auth/oauth.js.map +0 -1
- package/dist/cli/setup.d.ts +0 -3
- package/dist/cli/setup.d.ts.map +0 -1
- package/dist/cli/setup.js +0 -234
- package/dist/cli/setup.js.map +0 -1
- package/dist/index-minimal.d.ts +0 -2
- package/dist/index-minimal.d.ts.map +0 -1
- package/dist/index-minimal.js +0 -2
- package/dist/index-minimal.js.map +0 -1
- package/dist/index-simple.d.ts +0 -5
- package/dist/index-simple.d.ts.map +0 -1
- package/dist/index-simple.js +0 -5
- package/dist/index-simple.js.map +0 -1
- package/dist/plugin-minimal.d.ts +0 -21
- package/dist/plugin-minimal.d.ts.map +0 -1
- package/dist/plugin-minimal.js +0 -27
- package/dist/plugin-minimal.js.map +0 -1
- package/dist/plugin-simple.d.ts +0 -28
- package/dist/plugin-simple.d.ts.map +0 -1
- package/dist/plugin-simple.js +0 -117
- package/dist/plugin-simple.js.map +0 -1
- package/dist/storage/storage.d.ts +0 -56
- package/dist/storage/storage.d.ts.map +0 -1
- package/dist/storage/storage.js +0 -138
- package/dist/storage/storage.js.map +0 -1
package/dist/storage/storage.js
DELETED
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license
|
|
3
|
-
* Copyright 2025 Yusuf
|
|
4
|
-
* SPDX-License-Identifier: MIT
|
|
5
|
-
*/
|
|
6
|
-
import fs from 'node:fs/promises';
|
|
7
|
-
import { OAUTH_CREDS_PATH, GOOGLE_ACCOUNTS_PATH, ACCOUNT_POOL_PATH, PLUGIN_STORAGE_DIR, GEMINI_DIR, } from '../constants.js';
|
|
8
|
-
/**
|
|
9
|
-
* Storage manager for OAuth credentials and account pool
|
|
10
|
-
*/
|
|
11
|
-
export const StorageManager = {
|
|
12
|
-
/**
|
|
13
|
-
* Ensure storage directories exist
|
|
14
|
-
*/
|
|
15
|
-
async ensureDirectories() {
|
|
16
|
-
await fs.mkdir(GEMINI_DIR, { recursive: true });
|
|
17
|
-
await fs.mkdir(PLUGIN_STORAGE_DIR, { recursive: true });
|
|
18
|
-
},
|
|
19
|
-
/**
|
|
20
|
-
* Read OAuth credentials from Gemini CLI storage
|
|
21
|
-
*/
|
|
22
|
-
async readOAuthCredentials() {
|
|
23
|
-
try {
|
|
24
|
-
const data = await fs.readFile(OAUTH_CREDS_PATH, 'utf-8');
|
|
25
|
-
return JSON.parse(data);
|
|
26
|
-
}
|
|
27
|
-
catch (error) {
|
|
28
|
-
if (error.code === 'ENOENT') {
|
|
29
|
-
return null;
|
|
30
|
-
}
|
|
31
|
-
throw error;
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
/**
|
|
35
|
-
* Write OAuth credentials to Gemini CLI storage
|
|
36
|
-
*/
|
|
37
|
-
async writeOAuthCredentials(credentials) {
|
|
38
|
-
await StorageManager.ensureDirectories();
|
|
39
|
-
await fs.writeFile(OAUTH_CREDS_PATH, JSON.stringify(credentials, null, 2), 'utf-8');
|
|
40
|
-
},
|
|
41
|
-
/**
|
|
42
|
-
* Read Google accounts list from Gemini CLI
|
|
43
|
-
*/
|
|
44
|
-
async readGoogleAccounts() {
|
|
45
|
-
try {
|
|
46
|
-
const data = await fs.readFile(GOOGLE_ACCOUNTS_PATH, 'utf-8');
|
|
47
|
-
const parsed = JSON.parse(data);
|
|
48
|
-
return parsed.accounts || [];
|
|
49
|
-
}
|
|
50
|
-
catch (error) {
|
|
51
|
-
if (error.code === 'ENOENT') {
|
|
52
|
-
return [];
|
|
53
|
-
}
|
|
54
|
-
throw error;
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
/**
|
|
58
|
-
* Read account pool
|
|
59
|
-
*/
|
|
60
|
-
async readAccountPool() {
|
|
61
|
-
try {
|
|
62
|
-
const data = await fs.readFile(ACCOUNT_POOL_PATH, 'utf-8');
|
|
63
|
-
return JSON.parse(data);
|
|
64
|
-
}
|
|
65
|
-
catch (error) {
|
|
66
|
-
if (error.code === 'ENOENT') {
|
|
67
|
-
return { accounts: [], currentIndex: 0 };
|
|
68
|
-
}
|
|
69
|
-
throw error;
|
|
70
|
-
}
|
|
71
|
-
},
|
|
72
|
-
/**
|
|
73
|
-
* Write account pool
|
|
74
|
-
*/
|
|
75
|
-
async writeAccountPool(pool) {
|
|
76
|
-
await StorageManager.ensureDirectories();
|
|
77
|
-
await fs.writeFile(ACCOUNT_POOL_PATH, JSON.stringify(pool, null, 2), 'utf-8');
|
|
78
|
-
},
|
|
79
|
-
/**
|
|
80
|
-
* Update account in pool
|
|
81
|
-
*/
|
|
82
|
-
async updateAccountInPool(email, updates) {
|
|
83
|
-
const pool = await StorageManager.readAccountPool();
|
|
84
|
-
const accountIndex = pool.accounts.findIndex((acc) => acc.email === email);
|
|
85
|
-
if (accountIndex >= 0) {
|
|
86
|
-
pool.accounts[accountIndex] = {
|
|
87
|
-
...pool.accounts[accountIndex],
|
|
88
|
-
...updates,
|
|
89
|
-
};
|
|
90
|
-
await StorageManager.writeAccountPool(pool);
|
|
91
|
-
}
|
|
92
|
-
},
|
|
93
|
-
/**
|
|
94
|
-
* Add or update account in pool
|
|
95
|
-
*/
|
|
96
|
-
async upsertAccountInPool(entry) {
|
|
97
|
-
const pool = await StorageManager.readAccountPool();
|
|
98
|
-
const accountIndex = pool.accounts.findIndex((acc) => acc.email === entry.email);
|
|
99
|
-
if (accountIndex >= 0) {
|
|
100
|
-
pool.accounts[accountIndex] = entry;
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
pool.accounts.push(entry);
|
|
104
|
-
}
|
|
105
|
-
await StorageManager.writeAccountPool(pool);
|
|
106
|
-
},
|
|
107
|
-
/**
|
|
108
|
-
* Remove account from pool
|
|
109
|
-
*/
|
|
110
|
-
async removeAccountFromPool(email) {
|
|
111
|
-
const pool = await StorageManager.readAccountPool();
|
|
112
|
-
pool.accounts = pool.accounts.filter((acc) => acc.email !== email);
|
|
113
|
-
await StorageManager.writeAccountPool(pool);
|
|
114
|
-
},
|
|
115
|
-
/**
|
|
116
|
-
* Get current active account from pool
|
|
117
|
-
*/
|
|
118
|
-
async getCurrentAccount() {
|
|
119
|
-
const pool = await StorageManager.readAccountPool();
|
|
120
|
-
if (pool.accounts.length === 0) {
|
|
121
|
-
return null;
|
|
122
|
-
}
|
|
123
|
-
return pool.accounts[pool.currentIndex] || pool.accounts[0];
|
|
124
|
-
},
|
|
125
|
-
/**
|
|
126
|
-
* Rotate to next account in pool
|
|
127
|
-
*/
|
|
128
|
-
async rotateToNextAccount() {
|
|
129
|
-
const pool = await StorageManager.readAccountPool();
|
|
130
|
-
if (pool.accounts.length === 0) {
|
|
131
|
-
return null;
|
|
132
|
-
}
|
|
133
|
-
pool.currentIndex = (pool.currentIndex + 1) % pool.accounts.length;
|
|
134
|
-
await StorageManager.writeAccountPool(pool);
|
|
135
|
-
return pool.accounts[pool.currentIndex];
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
//# sourceMappingURL=storage.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/storage/storage.ts"],"names":[],"mappings":"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"}
|