cc-wechat 0.6.2 → 0.6.3
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/store.js +24 -1
- package/dist/store.js.map +1 -1
- package/package.json +1 -1
- package/src/store.ts +22 -1
package/dist/store.js
CHANGED
|
@@ -1,15 +1,38 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* cc-wechat 凭证持久化 — account.json 原子写入 + sync buf
|
|
3
3
|
*/
|
|
4
|
-
import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
4
|
+
import { existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
5
5
|
import { homedir } from 'node:os';
|
|
6
6
|
import { join } from 'node:path';
|
|
7
7
|
const ACCOUNT_FILE = 'account.json';
|
|
8
8
|
const SYNC_BUF_FILE = 'sync-buf.txt';
|
|
9
|
+
let migrated = false;
|
|
10
|
+
/**
|
|
11
|
+
* 旧版凭证自动迁移到 default profile 目录
|
|
12
|
+
*/
|
|
13
|
+
function migrateOldState() {
|
|
14
|
+
if (migrated)
|
|
15
|
+
return;
|
|
16
|
+
migrated = true;
|
|
17
|
+
const base = join(homedir(), '.claude', 'channels', 'wechat');
|
|
18
|
+
const oldAccount = join(base, ACCOUNT_FILE);
|
|
19
|
+
if (!existsSync(oldAccount))
|
|
20
|
+
return;
|
|
21
|
+
const defaultDir = join(base, 'default');
|
|
22
|
+
// default 目录已有凭证则不覆盖
|
|
23
|
+
if (existsSync(join(defaultDir, ACCOUNT_FILE)))
|
|
24
|
+
return;
|
|
25
|
+
mkdirSync(defaultDir, { recursive: true });
|
|
26
|
+
renameSync(oldAccount, join(defaultDir, ACCOUNT_FILE));
|
|
27
|
+
const oldBuf = join(base, SYNC_BUF_FILE);
|
|
28
|
+
if (existsSync(oldBuf))
|
|
29
|
+
renameSync(oldBuf, join(defaultDir, SYNC_BUF_FILE));
|
|
30
|
+
}
|
|
9
31
|
/**
|
|
10
32
|
* 获取状态目录路径,不存在则自动创建
|
|
11
33
|
*/
|
|
12
34
|
export function getStateDir() {
|
|
35
|
+
migrateOldState();
|
|
13
36
|
const profile = process.env.WECHAT_PROFILE || 'default';
|
|
14
37
|
const dir = join(homedir(), '.claude', 'channels', 'wechat', profile);
|
|
15
38
|
mkdirSync(dir, { recursive: true });
|
package/dist/store.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/store.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* cc-wechat 凭证持久化 — account.json 原子写入 + sync buf
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import { mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
5
|
+
import { existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
6
6
|
import { homedir } from 'node:os';
|
|
7
7
|
import { join } from 'node:path';
|
|
8
8
|
import type { AccountData } from './types.js';
|
|
@@ -10,10 +10,31 @@ import type { AccountData } from './types.js';
|
|
|
10
10
|
const ACCOUNT_FILE = 'account.json';
|
|
11
11
|
const SYNC_BUF_FILE = 'sync-buf.txt';
|
|
12
12
|
|
|
13
|
+
let migrated = false;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* 旧版凭证自动迁移到 default profile 目录
|
|
17
|
+
*/
|
|
18
|
+
function migrateOldState(): void {
|
|
19
|
+
if (migrated) return;
|
|
20
|
+
migrated = true;
|
|
21
|
+
const base = join(homedir(), '.claude', 'channels', 'wechat');
|
|
22
|
+
const oldAccount = join(base, ACCOUNT_FILE);
|
|
23
|
+
if (!existsSync(oldAccount)) return;
|
|
24
|
+
const defaultDir = join(base, 'default');
|
|
25
|
+
// default 目录已有凭证则不覆盖
|
|
26
|
+
if (existsSync(join(defaultDir, ACCOUNT_FILE))) return;
|
|
27
|
+
mkdirSync(defaultDir, { recursive: true });
|
|
28
|
+
renameSync(oldAccount, join(defaultDir, ACCOUNT_FILE));
|
|
29
|
+
const oldBuf = join(base, SYNC_BUF_FILE);
|
|
30
|
+
if (existsSync(oldBuf)) renameSync(oldBuf, join(defaultDir, SYNC_BUF_FILE));
|
|
31
|
+
}
|
|
32
|
+
|
|
13
33
|
/**
|
|
14
34
|
* 获取状态目录路径,不存在则自动创建
|
|
15
35
|
*/
|
|
16
36
|
export function getStateDir(): string {
|
|
37
|
+
migrateOldState();
|
|
17
38
|
const profile = process.env.WECHAT_PROFILE || 'default';
|
|
18
39
|
const dir = join(homedir(), '.claude', 'channels', 'wechat', profile);
|
|
19
40
|
mkdirSync(dir, { recursive: true });
|