@supertiny99/cc-switch 1.0.8 → 1.2.0

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/README.en.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # cc-switch
2
2
 
3
- [English](README.en.md) | [中文](README.zh-CN.md)
3
+ [English](README.en.md) | [中文](README.md)
4
4
 
5
5
  > A TUI tool for quickly switching Claude Code API providers
6
6
 
@@ -11,6 +11,8 @@ When your token quota is exhausted, you can quickly switch to another provider/t
11
11
  - 🔄 **Quick Switch** - Complete provider switch in 1-2 seconds
12
12
  - 🎨 **Interactive Selection** - Friendly interface with fuzzy search support
13
13
  - 🔒 **Auto Backup** - Automatically backs up config before each switch
14
+ - 💾 **Save Current Config** - Quickly save externally modified configs as new profiles
15
+ - 🔔 **Smart Prompts** - Auto-prompt to save unsaved configs before switching
14
16
  - 📦 **Extensible** - Reserved interfaces for MCP, skills, and plugin switching
15
17
  - 🌍 **Multi-provider** - Supports any Anthropic API-compatible provider
16
18
 
@@ -22,6 +24,8 @@ When your token quota is exhausted, you can quickly switch to another provider/t
22
24
  npm install -g @supertiny99/cc-switch
23
25
  ```
24
26
 
27
+ After installation, you can use either `cc-switch` or the shorter alias `ccs` (both are fully equivalent).
28
+
25
29
  ### Local Development
26
30
 
27
31
  ```bash
@@ -31,12 +35,42 @@ npm install
31
35
  npm link # Link to local environment
32
36
  ```
33
37
 
38
+ ## Update
39
+
40
+ ### Update to Latest Version
41
+
42
+ ```bash
43
+ npm update -g @supertiny99/cc-switch
44
+ ```
45
+
46
+ Or:
47
+
48
+ ```bash
49
+ npm install -g @supertiny99/cc-switch@latest
50
+ ```
51
+
52
+ ### Check Current Version
53
+
54
+ ```bash
55
+ ccs --version
56
+ # or
57
+ cc-switch --version
58
+ ```
59
+
60
+ ### View Available Versions
61
+
62
+ ```bash
63
+ npm view @supertiny99/cc-switch versions
64
+ ```
65
+
34
66
  ## Quick Start
35
67
 
68
+ > **Tip**: All commands can use `ccs` instead of `cc-switch`, e.g., `ccs list`, `ccs use`, etc.
69
+
36
70
  ### 1. Check Current Configuration
37
71
 
38
72
  ```bash
39
- cc-switch current
73
+ ccs current
40
74
  ```
41
75
 
42
76
  Output:
@@ -52,21 +86,75 @@ Current Configuration:
52
86
  ### 2. List All Providers
53
87
 
54
88
  ```bash
55
- cc-switch list
89
+ ccs list
56
90
  ```
57
91
 
58
92
  ### 3. Interactive Switch
59
93
 
60
94
  ```bash
61
- cc-switch
95
+ ccs
62
96
  ```
63
97
 
64
98
  Type `zh` to quickly locate "Zhipu AI", then press Enter to confirm.
65
99
 
66
- ### 4. Direct Switch
100
+ ### 4. Switch to Specified Provider
67
101
 
68
102
  ```bash
69
- cc-switch use anthropic
103
+ ccs use anthropic
104
+ ```
105
+
106
+ Or use interactive selection:
107
+
108
+ ```bash
109
+ ccs use
110
+ ```
111
+
112
+ ### 5. Save Current Configuration
113
+
114
+ When external tools (like API proxies or other config management tools) directly modify `~/.claude/settings.json`, you can use the `save` command to save the current configuration as a new profile:
115
+
116
+ ```bash
117
+ ccs save
118
+ ```
119
+
120
+ The command will:
121
+ - Automatically detect the current provider type (Anthropic, Zhipu, OpenRouter, etc.)
122
+ - Extract known configuration fields (token, base URL, model names, etc.)
123
+ - Generate smart default ID and name (customizable)
124
+ - Detect similar configurations and warn (avoid duplicates)
125
+ - Mask sensitive token information for security
126
+
127
+ Example output:
128
+ ```
129
+ 📦 Current Configuration Detected
130
+
131
+ Provider: Custom Provider
132
+ Base URL: http://127.0.0.1:8045
133
+ Haiku: gemini-3-flash
134
+ Sonnet: claude-sonnet-4-5
135
+ Token: sk-d7f0...6060
136
+
137
+ ? Profile ID: › example-proxy
138
+ ? Profile name: › Example Proxy
139
+ ? Description (optional): ›
140
+ ? Icon: › 🔌
141
+
142
+ ✓ Saved as "Example Proxy" (example-proxy)
143
+ ```
144
+
145
+ **Auto-save prompt**: When executing `ccs use` to switch configurations, if the current config is not saved, the system will automatically prompt whether to save:
146
+
147
+ ```bash
148
+ $ ccs use anthropic
149
+
150
+ ⚠️ Current configuration is not saved
151
+ ? Save current config before switching? (Y/n) › Yes
152
+
153
+ ? Profile ID: › my-config
154
+ ? Profile name: › My Config
155
+ ✓ Saved as "My Config"
156
+
157
+ # Then continue with the switch operation...
70
158
  ```
71
159
 
72
160
  ## Configuration Files
@@ -107,14 +195,22 @@ Create a JSON file in `~/.claude/profiles/`:
107
195
 
108
196
  ## Command Reference
109
197
 
198
+ > **Tip**: All `cc-switch` commands can use `ccs` as an alias.
199
+
110
200
  | Command | Description |
111
201
  |---------|-------------|
112
- | `cc-switch` | Interactive provider selection |
113
- | `cc-switch use <id>` | Switch directly to specified provider |
114
- | `cc-switch list` | List all available providers |
115
- | `cc-switch current` | Display current configuration |
202
+ | `ccs` / `cc-switch` | Interactive provider selection |
203
+ | `ccs add` | Add a new provider profile |
204
+ | `ccs save` | **Save current config as new profile** (use after external tools modify config) |
205
+ | `ccs use [profile-id]` | Switch to specified provider (optional argument, interactive if not provided)<br/>**Auto-detect unsaved configs and prompt to save** |
206
+ | `ccs list` | List all available providers |
207
+ | `ccs current` | Display current configuration |
208
+ | `cc-switch edit` / `cc-switch modify` | Edit an existing provider profile |
209
+ | `cc-switch delete` / `cc-switch rm` | Delete a provider profile |
116
210
  | `cc-switch history` | View backup history |
117
211
  | `cc-switch restore <file>` | Restore from backup |
212
+ | `cc-switch --version` | Display version number |
213
+ | `cc-switch --help` | Display help information |
118
214
 
119
215
  ## Development
120
216
 
@@ -128,7 +224,9 @@ cc-switch/
128
224
  │ │ └── config/
129
225
  │ │ ├── schema.ts # Type definitions
130
226
  │ │ ├── loader.ts # Config reading
131
- │ │ └── writer.ts # Config writing (with backup)
227
+ │ │ ├── writer.ts # Config writing (with backup)
228
+ │ │ ├── creator.ts # Profile creation (preset templates)
229
+ │ │ └── saver.ts # Save current config (v1.1.0+)
132
230
  │ └── ui/
133
231
  │ └── quick-select.ts # Interactive selection
134
232
  ├── package.json
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # cc-switch
2
2
 
3
- [English](README.en.md) | [中文](README.zh-CN.md)
3
+ [English](README.en.md) | [中文](README.md)
4
4
 
5
5
  > 快速切换 Claude Code API 提供商的 TUI 工具
6
6
 
@@ -11,6 +11,8 @@
11
11
  - 🔄 **快速切换** - 1-2 秒内完成提供商切换
12
12
  - 🎨 **交互式选择** - 支持模糊搜索的友好界面
13
13
  - 🔒 **自动备份** - 每次切换前自动备份配置
14
+ - 💾 **保存当前配置** - 将外部工具修改的配置快速保存为新 profile
15
+ - 🔔 **智能提示** - 切换前自动提示保存未保存的配置
14
16
  - 📦 **可扩展** - 预留 MCP、技能、插件切换接口
15
17
  - 🌍 **多提供商** - 支持任意兼容 Anthropic API 的提供商
16
18
 
@@ -22,6 +24,8 @@
22
24
  npm install -g @supertiny99/cc-switch
23
25
  ```
24
26
 
27
+ 安装后可以使用 `cc-switch` 或简短别名 `ccs` 命令(两者完全等价)。
28
+
25
29
  ### 本地开发
26
30
 
27
31
  ```bash
@@ -31,12 +35,42 @@ npm install
31
35
  npm link # 链接到本地环境
32
36
  ```
33
37
 
38
+ ## 更新
39
+
40
+ ### 更新到最新版本
41
+
42
+ ```bash
43
+ npm update -g @supertiny99/cc-switch
44
+ ```
45
+
46
+ 或者
47
+
48
+ ```bash
49
+ npm install -g @supertiny99/cc-switch@latest
50
+ ```
51
+
52
+ ### 检查当前版本
53
+
54
+ ```bash
55
+ ccs --version
56
+ # 或
57
+ cc-switch --version
58
+ ```
59
+
60
+ ### 查看可用版本
61
+
62
+ ```bash
63
+ npm view @supertiny99/cc-switch versions
64
+ ```
65
+
34
66
  ## 快速开始
35
67
 
68
+ > **提示**: 所有命令都可以使用 `ccs` 替代 `cc-switch`,例如 `ccs list`、`ccs use` 等。
69
+
36
70
  ### 1. 查看当前配置
37
71
 
38
72
  ```bash
39
- cc-switch current
73
+ ccs current
40
74
  ```
41
75
 
42
76
  输出:
@@ -52,21 +86,75 @@ Current Configuration:
52
86
  ### 2. 列出所有提供商
53
87
 
54
88
  ```bash
55
- cc-switch list
89
+ ccs list
56
90
  ```
57
91
 
58
92
  ### 3. 交互式切换
59
93
 
60
94
  ```bash
61
- cc-switch
95
+ ccs
62
96
  ```
63
97
 
64
98
  输入 `zh` 即可快速定位到 "Zhipu AI",按 Enter 确认。
65
99
 
66
- ### 4. 直接切换
100
+ ### 4. 直接切换到指定提供商
67
101
 
68
102
  ```bash
69
- cc-switch use anthropic
103
+ ccs use anthropic
104
+ ```
105
+
106
+ 或使用交互式选择:
107
+
108
+ ```bash
109
+ ccs use
110
+ ```
111
+
112
+ ### 5. 保存当前配置
113
+
114
+ 当外部工具(如 API proxy、其他配置管理工具)直接修改了 `~/.claude/settings.json` 后,可以使用 `save` 命令将当前配置保存为一个新的 profile:
115
+
116
+ ```bash
117
+ ccs save
118
+ ```
119
+
120
+ 该命令会:
121
+ - 自动检测当前 provider 类型(Anthropic、Zhipu、OpenRouter 等)
122
+ - 提取已知的配置字段(token、base URL、模型名称等)
123
+ - 智能生成默认 ID 和名称(支持自定义)
124
+ - 检测相似配置并提示(避免重复保存)
125
+ - 遮罩显示敏感 token 信息
126
+
127
+ 示例输出:
128
+ ```
129
+ 📦 Current Configuration Detected
130
+
131
+ Provider: Custom Provider
132
+ Base URL: http://127.0.0.1:8045
133
+ Haiku: gemini-3-flash
134
+ Sonnet: claude-sonnet-4-5
135
+ Token: sk-d7f0...6060
136
+
137
+ ? Profile ID: › example-proxy
138
+ ? Profile name: › Example Proxy
139
+ ? Description (optional): ›
140
+ ? Icon: › 🔌
141
+
142
+ ✓ Saved as "Example Proxy" (example-proxy)
143
+ ```
144
+
145
+ **自动保存提示**:当执行 `ccs use` 切换配置时,如果当前配置未保存,系统会自动提示是否保存:
146
+
147
+ ```bash
148
+ $ ccs use anthropic
149
+
150
+ ⚠️ Current configuration is not saved
151
+ ? Save current config before switching? (Y/n) › Yes
152
+
153
+ ? Profile ID: › my-config
154
+ ? Profile name: › My Config
155
+ ✓ Saved as "My Config"
156
+
157
+ # 然后继续执行切换操作...
70
158
  ```
71
159
 
72
160
  ## 配置文件
@@ -107,14 +195,22 @@ cc-switch use anthropic
107
195
 
108
196
  ## 命令参考
109
197
 
198
+ > **提示**: 所有 `cc-switch` 命令都可以用 `ccs` 替代。
199
+
110
200
  | 命令 | 说明 |
111
201
  |------|------|
112
- | `cc-switch` | 交互式选择提供商 |
113
- | `cc-switch use <id>` | 直接切换到指定提供商 |
114
- | `cc-switch list` | 列出所有可用提供商 |
115
- | `cc-switch current` | 显示当前配置 |
116
- | `cc-switch history` | 查看备份历史 |
117
- | `cc-switch restore <file>` | 从备份恢复 |
202
+ | `ccs` / `cc-switch` | 交互式选择提供商 |
203
+ | `ccs add` | 添加新的提供商配置 |
204
+ | `ccs save` | **保存当前配置为新 profile**(外部工具修改配置后使用) |
205
+ | `ccs use [profile-id]` | 切换到指定提供商(可选参数,不提供则交互式选择)<br/>**自动检测未保存配置并提示保存** |
206
+ | `ccs list` | 列出所有可用提供商 |
207
+ | `ccs current` | 显示当前配置 |
208
+ | `ccs edit` / `ccs modify` | 编辑现有提供商配置 |
209
+ | `ccs delete` / `ccs rm` | 删除提供商配置 |
210
+ | `ccs history` | 查看备份历史 |
211
+ | `ccs restore <file>` | 从备份恢复 |
212
+ | `ccs --version` | 显示版本号 |
213
+ | `ccs --help` | 显示帮助信息 |
118
214
 
119
215
  ## 开发
120
216
 
@@ -128,7 +224,9 @@ cc-switch/
128
224
  │ │ └── config/
129
225
  │ │ ├── schema.ts # 类型定义
130
226
  │ │ ├── loader.ts # 配置读取
131
- │ │ └── writer.ts # 配置写入(含备份)
227
+ │ │ ├── writer.ts # 配置写入(含备份)
228
+ │ │ ├── creator.ts # Profile 创建(预设模板)
229
+ │ │ └── saver.ts # 保存当前配置(新功能)
132
230
  │ └── ui/
133
231
  │ └── quick-select.ts # 交互式选择
134
232
  ├── package.json
package/dist/index.js CHANGED
@@ -9,13 +9,14 @@ const quick_select_1 = require("./ui/quick-select");
9
9
  const loader_1 = require("./lib/config/loader");
10
10
  const writer_1 = require("./lib/config/writer");
11
11
  const creator_1 = require("./lib/config/creator");
12
+ const saver_1 = require("./lib/config/saver");
12
13
  const chalk_1 = __importDefault(require("chalk"));
13
14
  const prompts_1 = __importDefault(require("prompts"));
14
15
  const program = new commander_1.Command();
15
16
  program
16
17
  .name('cc-switch')
17
- .description('Quick Claude Code configuration switcher')
18
- .version('1.0.0');
18
+ .description('Quick Claude Code configuration switcher (also available as "ccs")')
19
+ .version('1.1.0');
19
20
  program
20
21
  .action(async () => {
21
22
  await (0, quick_select_1.quickSelect)();
@@ -25,6 +26,41 @@ program
25
26
  .description('Switch to a provider profile')
26
27
  .action(async (profileIdArg) => {
27
28
  try {
29
+ // 任务 7.1-7.7: Auto-save 检测逻辑
30
+ const settings = await (0, loader_1.loadSettings)();
31
+ const currentProfileId = (0, loader_1.getCurrentProfileId)(settings);
32
+ // 任务 7.2: 检查当前配置是否为 unknown
33
+ if (!currentProfileId) {
34
+ // 任务 7.3: 显示警告
35
+ console.log(chalk_1.default.yellow('\n⚠️ Current configuration is not saved'));
36
+ // 任务 7.4: 询问是否保存
37
+ const { saveFirst } = await (0, prompts_1.default)({
38
+ type: 'confirm',
39
+ name: 'saveFirst',
40
+ message: 'Save current config before switching?',
41
+ initial: true
42
+ });
43
+ // 任务 7.6: 处理用户取消(Ctrl+C)
44
+ if (saveFirst === undefined) {
45
+ console.log(chalk_1.default.yellow('Cancelled'));
46
+ return;
47
+ }
48
+ // 任务 7.5: 若用户选择 Yes,调用快速保存
49
+ if (saveFirst) {
50
+ try {
51
+ await (0, saver_1.quickSaveCurrentConfig)(settings);
52
+ // 任务 7.7: 保存成功后继续执行原有逻辑
53
+ }
54
+ catch (err) {
55
+ if (err.message === 'User cancelled') {
56
+ console.log(chalk_1.default.yellow('Cancelled'));
57
+ return;
58
+ }
59
+ console.error(chalk_1.default.red(`Error saving config: ${err.message}`));
60
+ return;
61
+ }
62
+ }
63
+ }
28
64
  const profiles = await (0, loader_1.listProfiles)();
29
65
  if (profiles.length === 0) {
30
66
  console.log(chalk_1.default.yellow('No profiles found. Run: cc-switch add'));
@@ -351,6 +387,22 @@ program
351
387
  process.exit(1);
352
388
  }
353
389
  });
390
+ program
391
+ .command('save')
392
+ .description('Save current config as a new profile')
393
+ .action(async () => {
394
+ try {
395
+ await (0, saver_1.saveCurrentConfig)();
396
+ }
397
+ catch (err) {
398
+ if (err.message === 'User cancelled') {
399
+ console.log(chalk_1.default.yellow('\nCancelled'));
400
+ return;
401
+ }
402
+ console.error(chalk_1.default.red(`Error: ${err.message}`));
403
+ process.exit(1);
404
+ }
405
+ });
354
406
  program
355
407
  .command('delete')
356
408
  .alias('rm')
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AACA,yCAAoC;AACpC,oDAAgD;AAChD,gDAAuH;AACvH,gDAA6G;AAC7G,kDAAyH;AACzH,kDAA0B;AAC1B,sDAA8B;AAE9B,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,0CAA0C,CAAC;KACvD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO;KACJ,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,IAAA,0BAAW,GAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,8BAA8B,CAAC;KAC3C,MAAM,CAAC,KAAK,EAAE,YAAqB,EAAE,EAAE;IACtC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,IAAI,SAAS,GAAG,YAAY,CAAC;QAE7B,wDAAwD;QACxD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAA,4BAAmB,EAAC,QAAQ,CAAC,CAAC;YAE9C,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAC7B,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,iBAAiB;gBAC1B,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1B,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;oBAC3D,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE;oBAClC,KAAK,EAAE,CAAC,CAAC,EAAE;iBACZ,CAAC,CAAC;aACJ,CAAC,CAAC;YAEH,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC;YAE/B,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAW,EAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,IAAA,qBAAY,EAAC,OAAO,CAAC,CAAC;QAE5B,wBAAwB;QACxB,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;QACtD,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;QACpE,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC;QACtE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC;QAElE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,IAAI,IAAI,IAAI,gBAAgB,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACpE,IAAI,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,UAAU;YAAE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,UAAU,EAAE,CAAC,CAAC,CAAC;QACrE,IAAI,WAAW;YAAE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,WAAW,EAAE,CAAC,CAAC,CAAC;QACvE,IAAI,SAAS;YAAE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,SAAS,EAAE,CAAC,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,MAAM,OAAO,GAAG,IAAA,4BAAmB,EAAC,QAAQ,CAAC,CAAC;QAE9C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,2DAA2D,CAAC,CAAC,CAAC;YACvF,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACnB,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,eAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,eAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YACzF,IAAI,CAAC,CAAC,WAAW;gBAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,MAAM,SAAS,GAAG,IAAA,4BAAmB,EAAC,QAAQ,CAAC,CAAC;QAEhD,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAElD,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,cAAc,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,GAAG,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAC9H,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,cAAc,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAe,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QACxF,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,6BAA6B,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QACtG,OAAO,CAAC,GAAG,CAAC,mBAAmB,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,8BAA8B,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QACxG,OAAO,CAAC,GAAG,CAAC,iBAAiB,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,4BAA4B,IAAI,SAAS,CAAC,EAAE,CAAC,CAAC;QAEpG,IAAI,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,QAAQ,CAAC,GAAG,EAAE,wCAAwC,EAAE,CAAC;YAC3D,OAAO,CAAC,GAAG,CAAC,oCAAoC,eAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;QACvH,CAAC;QAED,IAAI,cAAc,EAAE,WAAW,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAK,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAW,GAAE,CAAC;QACpC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,uBAAuB,CAAC;KAChC,WAAW,CAAC,qBAAqB,CAAC;KAClC,MAAM,CAAC,KAAK,EAAE,UAAkB,EAAE,EAAE;IACnC,IAAI,CAAC;QACH,MAAM,IAAA,sBAAa,EAAC,UAAU,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC,CAAC;IAC5D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,KAAK,CAAC;KACd,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAE7D,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC/B,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,uBAAuB;YAChC,OAAO,EAAE,0BAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAClC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,KAAK,EAAE,CAAC,CAAC,EAAE;aACZ,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,cAAc,GAAG,0BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAE,CAAC;QAEpE,gBAAgB;QAChB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC9B,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,kBAAkB;YAC3B,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,mBAAmB;SACxE,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK;YAAE,OAAO;QAEnB,mCAAmC;QACnC,IAAI,aAAa,GAAG,cAAc,CAAC,OAAO,CAAC;QAC3C,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAChC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,qBAAqB;gBAC9B,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,sBAAsB;aAC3E,CAAC,CAAC;YACH,IAAI,CAAC,OAAO;gBAAE,OAAO;YACrB,aAAa,GAAG,OAAO,CAAC;QAC1B,CAAC;QAED,sCAAsC;QACtC,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YACtC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,0BAA0B;YACnC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,iBAAiB,GAAG,EAAE,CAAC;QAC3B,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAC7B;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,qBAAqB;oBAC9B,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB;iBACvE;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,+BAA+B;iBACzC;aACF,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAAE,OAAO;YAC3B,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC;YAC3B,iBAAiB,GAAG,QAAQ,CAAC,WAAW,CAAC;QAC3C,CAAC;QAED,6BAA6B;QAC7B,MAAM,SAAS,GAAG,IAAA,oBAAU,EAAC,UAAU,IAAI,cAAc,CAAC,EAAE,CAAC,CAAC;QAC9D,IAAI,MAAM,IAAA,uBAAa,EAAC,SAAS,CAAC,EAAE,CAAC;YACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAClC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,YAAY,SAAS,8BAA8B;gBAC5D,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YACH,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;QACH,CAAC;QAED,0BAA0B;QAC1B,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YACxC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,WAA+B,CAAC;QACpC,IAAI,YAAgC,CAAC;QACrC,IAAI,UAA8B,CAAC;QAEnC,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAC3B;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,mBAAmB;oBAC5B,OAAO,EAAE,cAAc,CAAC,aAAa,EAAE,KAAK;iBAC7C;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,oBAAoB;oBAC7B,OAAO,EAAE,cAAc,CAAC,aAAa,EAAE,MAAM;iBAC9C;gBACD;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,kBAAkB;oBAC3B,OAAO,EAAE,cAAc,CAAC,aAAa,EAAE,IAAI;iBAC5C;aACF,CAAC,CAAC;YACH,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YAC3B,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;YAC7B,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3B,CAAC;QAED,iBAAiB;QACjB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC7B,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,cAAc,CAAC,IAAI,IAAI,IAAI;SACrC,CAAC,CAAC;QAEH,8BAA8B;QAC9B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YACzC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,8BAA8B;YACvC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,gBAAoC,CAAC;QACzC,IAAI,0BAA8C,CAAC;QAEnD,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;gBAC7B;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY;oBAClB,OAAO,EAAE,4CAA4C;iBACtD;gBACD;oBACE,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,gCAAgC;oBACzC,OAAO,EAAE,KAAK;iBACf;aACF,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,UAAU;gBAAE,gBAAgB,GAAG,QAAQ,CAAC,UAAU,CAAC;YAChE,IAAI,QAAQ,CAAC,cAAc;gBAAE,0BAA0B,GAAG,MAAM,CAAC;QACnE,CAAC;QAED,iBAAiB;QACjB,MAAM,OAAO,GAAG,IAAA,iCAAuB,EAAC,cAAc,EAAE,KAAK,EAAE;YAC7D,UAAU,EAAE,UAAU,IAAI,SAAS;YACnC,iBAAiB,EAAE,iBAAiB,IAAI,SAAS;YACjD,aAAa;YACb,WAAW;YACX,YAAY;YACZ,UAAU;YACV,UAAU,EAAE,IAAI;YAChB,gBAAgB;YAChB,0BAA0B;SAC3B,CAAC,CAAC;QAEH,eAAe;QACf,MAAM,IAAA,qBAAW,EAAC,OAAO,CAAC,CAAC;QAE3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gBAAgB,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,EAAE,yBAAyB,CAAC,CAAC,CAAC;QAChG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wBAAwB,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAEhE,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,KAAK,CAAC,IAAI,CAAC;KACX,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAClC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,2BAA2B;YACpC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC1B,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnE,KAAK,EAAE,CAAC,CAAC,EAAE;aACZ,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAE,CAAC;QAExD,mBAAmB;QACnB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAChC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,mBAAmB,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,EAAE,IAAI;YAC5E,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,MAAM,IAAA,sBAAa,EAAC,SAAS,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,sBAAsB,OAAO,CAAC,IAAI,MAAM,SAAS,GAAG,CAAC,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,KAAK,CAAC,QAAQ,CAAC;KACf,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QAED,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAClC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC1B,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE;gBACnE,KAAK,EAAE,CAAC,CAAC,EAAE;aACZ,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAA,oBAAW,EAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC;QAEtC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,cAAc,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAExF,6DAA6D;QAC7D,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAO,EAAC;YAC5B;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,OAAO,CAAC,IAAI;aACtB;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,cAAc;gBACvB,OAAO,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE;aACnC;YACD;gBACE,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,0CAA0C;gBACnD,OAAO,EAAE,EAAE;aACZ;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,yCAAyC;gBAClD,OAAO,EAAE,UAAU,CAAC,kBAAkB,IAAI,EAAE;aAC7C;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,4CAA4C;gBACrD,OAAO,EAAE,UAAU,CAAC,6BAA6B,IAAI,EAAE;aACxD;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,6CAA6C;gBACtD,OAAO,EAAE,UAAU,CAAC,8BAA8B,IAAI,EAAE;aACzD;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,2CAA2C;gBACpD,OAAO,EAAE,UAAU,CAAC,4BAA4B,IAAI,EAAE;aACvD;SACF,CAAC,CAAC;QAEH,wBAAwB;QACxB,MAAM,cAAc,GAAmB;YACrC,GAAG,OAAO;YACV,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI;YAClC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,WAAW;YACvD,MAAM,EAAE;gBACN,GAAG,EAAE;oBACH,oBAAoB,EAAE,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,oBAAoB;iBACvE;aACF;SACF,CAAC;QAEF,uCAAuC;QACvC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC;QACjE,CAAC;aAAM,IAAI,UAAU,CAAC,kBAAkB,EAAE,CAAC;YACzC,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;QAC/E,CAAC;QAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;YACvB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,GAAG,OAAO,CAAC,UAAU,CAAC;QAC/E,CAAC;aAAM,IAAI,UAAU,CAAC,6BAA6B,EAAE,CAAC;YACpD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,GAAG,UAAU,CAAC,6BAA6B,CAAC;QACrG,CAAC;QAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACxB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,GAAG,OAAO,CAAC,WAAW,CAAC;QACjF,CAAC;aAAM,IAAI,UAAU,CAAC,8BAA8B,EAAE,CAAC;YACrD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,GAAG,UAAU,CAAC,8BAA8B,CAAC;QACvG,CAAC;QAED,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,GAAG,OAAO,CAAC,SAAS,CAAC;QAC7E,CAAC;aAAM,IAAI,UAAU,CAAC,4BAA4B,EAAE,CAAC;YACnD,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,GAAG,UAAU,CAAC,4BAA4B,CAAC;QACnG,CAAC;QAED,MAAM,IAAA,sBAAa,EAAC,cAAc,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gBAAgB,cAAc,CAAC,IAAI,yBAAyB,CAAC,CAAC,CAAC;IACzF,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,IAAI,GAAG,CAAC,OAAO,KAAK,gBAAgB,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;YACzC,OAAO;QACT,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { Settings, ProviderProfile } from './schema';
2
+ export declare function extractKnownFields(env: Record<string, string> | undefined): Record<string, string>;
3
+ export declare function maskToken(token: string): string;
4
+ export declare function displayDetectedConfig(config: Record<string, string>, providerType: string | null): void;
5
+ export declare function generateSmartId(providerType: string | null, config: Record<string, string>): string;
6
+ export declare function generateSmartName(providerType: string | null): string;
7
+ export declare function findSimilarProfiles(config: Record<string, string>): Promise<ProviderProfile[]>;
8
+ export declare function getSimilarityReason(profile: ProviderProfile, config: Record<string, string>): string;
9
+ export declare function saveCurrentConfig(): Promise<void>;
10
+ export declare function quickSaveCurrentConfig(settings: Settings): Promise<void>;
@@ -0,0 +1,306 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.extractKnownFields = extractKnownFields;
7
+ exports.maskToken = maskToken;
8
+ exports.displayDetectedConfig = displayDetectedConfig;
9
+ exports.generateSmartId = generateSmartId;
10
+ exports.generateSmartName = generateSmartName;
11
+ exports.findSimilarProfiles = findSimilarProfiles;
12
+ exports.getSimilarityReason = getSimilarityReason;
13
+ exports.saveCurrentConfig = saveCurrentConfig;
14
+ exports.quickSaveCurrentConfig = quickSaveCurrentConfig;
15
+ const prompts_1 = __importDefault(require("prompts"));
16
+ const chalk_1 = __importDefault(require("chalk"));
17
+ const loader_1 = require("./loader");
18
+ const creator_1 = require("./creator");
19
+ const creator_2 = require("./creator");
20
+ const creator_3 = require("./creator");
21
+ // 任务 1.2: 定义已知字段白名单
22
+ const KNOWN_FIELDS = [
23
+ 'ANTHROPIC_AUTH_TOKEN',
24
+ 'ANTHROPIC_BASE_URL',
25
+ 'ANTHROPIC_DEFAULT_HAIKU_MODEL',
26
+ 'ANTHROPIC_DEFAULT_SONNET_MODEL',
27
+ 'ANTHROPIC_DEFAULT_OPUS_MODEL',
28
+ 'API_TIMEOUT_MS',
29
+ 'CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC'
30
+ ];
31
+ // 任务 1.3: 提取已知字段
32
+ function extractKnownFields(env) {
33
+ const result = {};
34
+ if (!env)
35
+ return result;
36
+ for (const key of KNOWN_FIELDS) {
37
+ if (env[key]) {
38
+ result[key] = env[key];
39
+ }
40
+ }
41
+ return result;
42
+ }
43
+ // 任务 1.4: 遮罩 token 显示
44
+ function maskToken(token) {
45
+ if (token.length <= 10)
46
+ return '***';
47
+ return `${token.substring(0, 7)}...${token.substring(token.length - 4)}`;
48
+ }
49
+ // 任务 1.5: 显示检测到的配置
50
+ function displayDetectedConfig(config, providerType) {
51
+ const preset = creator_2.PROVIDER_PRESETS.find(p => p.id === providerType);
52
+ console.log(chalk_1.default.bold('\n📦 Current Configuration Detected\n'));
53
+ console.log(chalk_1.default.gray(`Provider: ${preset?.name || 'Unknown'}`));
54
+ if (config.ANTHROPIC_BASE_URL) {
55
+ console.log(chalk_1.default.gray(`Base URL: ${config.ANTHROPIC_BASE_URL}`));
56
+ }
57
+ if (config.ANTHROPIC_DEFAULT_HAIKU_MODEL) {
58
+ console.log(chalk_1.default.gray(`Haiku: ${config.ANTHROPIC_DEFAULT_HAIKU_MODEL}`));
59
+ }
60
+ if (config.ANTHROPIC_DEFAULT_SONNET_MODEL) {
61
+ console.log(chalk_1.default.gray(`Sonnet: ${config.ANTHROPIC_DEFAULT_SONNET_MODEL}`));
62
+ }
63
+ if (config.ANTHROPIC_DEFAULT_OPUS_MODEL) {
64
+ console.log(chalk_1.default.gray(`Opus: ${config.ANTHROPIC_DEFAULT_OPUS_MODEL}`));
65
+ }
66
+ if (config.ANTHROPIC_AUTH_TOKEN) {
67
+ console.log(chalk_1.default.gray(`Token: ${maskToken(config.ANTHROPIC_AUTH_TOKEN)}`));
68
+ }
69
+ console.log('');
70
+ }
71
+ // 任务 2.1-2.5: 智能默认值生成
72
+ function generateSmartId(providerType, config) {
73
+ // 任务 2.2: 从 URL 提取域名
74
+ if (providerType === 'custom' && config.ANTHROPIC_BASE_URL) {
75
+ try {
76
+ const hostname = new URL(config.ANTHROPIC_BASE_URL).hostname;
77
+ const domain = hostname.replace('api.', '').replace('.com', '');
78
+ return (0, creator_3.sanitizeId)(domain);
79
+ }
80
+ catch (e) {
81
+ // 任务 2.3: URL 解析失败降级处理
82
+ return (0, creator_3.sanitizeId)(providerType || 'custom');
83
+ }
84
+ }
85
+ // 任务 2.5: anthropic 官方 API 添加时间戳
86
+ return providerType === 'anthropic'
87
+ ? 'anthropic-' + Date.now()
88
+ : (0, creator_3.sanitizeId)(providerType || 'custom');
89
+ }
90
+ // 任务 2.4: 生成智能名称
91
+ function generateSmartName(providerType) {
92
+ const preset = creator_2.PROVIDER_PRESETS.find(p => p.id === providerType);
93
+ return preset?.name || 'Custom Provider';
94
+ }
95
+ // 任务 3.1-3.5: 相似配置检测
96
+ async function findSimilarProfiles(config) {
97
+ const profiles = await (0, loader_1.listProfiles)();
98
+ const similar = [];
99
+ for (const profile of profiles) {
100
+ // 任务 3.3: 比较 base URL
101
+ if (profile.config.env.ANTHROPIC_BASE_URL &&
102
+ profile.config.env.ANTHROPIC_BASE_URL === config.ANTHROPIC_BASE_URL) {
103
+ similar.push(profile);
104
+ continue;
105
+ }
106
+ // 任务 3.4: 比较 token 前 10 个字符
107
+ if (profile.config.env.ANTHROPIC_AUTH_TOKEN &&
108
+ config.ANTHROPIC_AUTH_TOKEN &&
109
+ profile.config.env.ANTHROPIC_AUTH_TOKEN.substring(0, 10) ===
110
+ config.ANTHROPIC_AUTH_TOKEN.substring(0, 10)) {
111
+ similar.push(profile);
112
+ }
113
+ }
114
+ // 任务 3.5: 返回相似 profile 列表
115
+ return similar;
116
+ }
117
+ // 任务 3.2: 生成相似原因描述
118
+ function getSimilarityReason(profile, config) {
119
+ if (profile.config.env.ANTHROPIC_BASE_URL === config.ANTHROPIC_BASE_URL) {
120
+ return 'same base URL';
121
+ }
122
+ if (profile.config.env.ANTHROPIC_AUTH_TOKEN?.substring(0, 10) ===
123
+ config.ANTHROPIC_AUTH_TOKEN?.substring(0, 10)) {
124
+ return 'same token prefix';
125
+ }
126
+ return 'similar configuration';
127
+ }
128
+ // 任务 4.1-4.11: 主保存函数
129
+ async function saveCurrentConfig() {
130
+ // 任务 4.2: 读取当前 settings.json 并提取配置
131
+ const settings = await (0, loader_1.loadSettings)();
132
+ const extractedConfig = extractKnownFields(settings.env);
133
+ // 任务 4.5: 验证必需字段
134
+ if (!extractedConfig.ANTHROPIC_AUTH_TOKEN) {
135
+ console.log(chalk_1.default.red('✗ Missing required field: ANTHROPIC_AUTH_TOKEN'));
136
+ console.log(chalk_1.default.yellow(' Current settings do not contain a valid token'));
137
+ return;
138
+ }
139
+ // 任务 4.3: 检查当前配置是否已保存
140
+ const currentProfileId = (0, loader_1.getCurrentProfileId)(settings);
141
+ if (currentProfileId) {
142
+ const profiles = await (0, loader_1.listProfiles)();
143
+ const currentProfile = profiles.find(p => p.id === currentProfileId);
144
+ if (currentProfile) {
145
+ console.log(chalk_1.default.yellow(`\n⚠️ Current config is already saved as "${currentProfile.icon} ${currentProfile.name}"`));
146
+ // 任务 4.4: 询问是否创建副本
147
+ const { createCopy } = await (0, prompts_1.default)({
148
+ type: 'confirm',
149
+ name: 'createCopy',
150
+ message: 'Create a copy anyway?',
151
+ initial: false
152
+ });
153
+ if (!createCopy) {
154
+ console.log(chalk_1.default.yellow('Cancelled'));
155
+ return;
156
+ }
157
+ }
158
+ }
159
+ // 任务 4.6: 检测 provider 类型并显示配置摘要
160
+ const providerType = (0, loader_1.getCurrentProvider)(settings);
161
+ displayDetectedConfig(extractedConfig, providerType);
162
+ // 任务 4.7: 检测并警告相似配置
163
+ const similarProfiles = await findSimilarProfiles(extractedConfig);
164
+ if (similarProfiles.length > 0) {
165
+ console.log(chalk_1.default.yellow('\n⚠️ Similar configurations found:'));
166
+ similarProfiles.forEach(p => {
167
+ console.log(` • "${p.name}" - ${getSimilarityReason(p, extractedConfig)}`);
168
+ });
169
+ const { proceed } = await (0, prompts_1.default)({
170
+ type: 'confirm',
171
+ name: 'proceed',
172
+ message: 'Create new profile anyway?',
173
+ initial: true
174
+ });
175
+ if (!proceed) {
176
+ console.log(chalk_1.default.yellow('Cancelled'));
177
+ return;
178
+ }
179
+ }
180
+ // 任务 4.8: 生成智能默认值并提示用户输入
181
+ const suggestedId = generateSmartId(providerType, extractedConfig);
182
+ const suggestedName = generateSmartName(providerType);
183
+ const preset = creator_2.PROVIDER_PRESETS.find(p => p.id === providerType);
184
+ const answers = await (0, prompts_1.default)([
185
+ {
186
+ type: 'text',
187
+ name: 'id',
188
+ message: 'Profile ID:',
189
+ initial: suggestedId,
190
+ // 任务 4.9: 在 validate 中检查 ID 冲突
191
+ validate: async (val) => {
192
+ if (!val.trim())
193
+ return 'ID is required';
194
+ const sanitized = (0, creator_3.sanitizeId)(val);
195
+ if (await (0, creator_1.profileExists)(sanitized)) {
196
+ return `Profile "${sanitized}" already exists`;
197
+ }
198
+ return true;
199
+ }
200
+ },
201
+ {
202
+ type: 'text',
203
+ name: 'name',
204
+ message: 'Profile name:',
205
+ initial: suggestedName,
206
+ validate: (val) => val.trim().length > 0 || 'Name is required'
207
+ },
208
+ {
209
+ type: 'text',
210
+ name: 'description',
211
+ message: 'Description (optional):'
212
+ },
213
+ {
214
+ type: 'text',
215
+ name: 'icon',
216
+ message: 'Icon:',
217
+ initial: preset?.icon || '📦'
218
+ }
219
+ ]);
220
+ if (!answers.id || !answers.name) {
221
+ console.log(chalk_1.default.yellow('Cancelled'));
222
+ return;
223
+ }
224
+ // 任务 4.10: 创建 ProviderProfile 对象并保存
225
+ const profile = {
226
+ id: (0, creator_3.sanitizeId)(answers.id),
227
+ name: answers.name,
228
+ description: answers.description || undefined,
229
+ icon: answers.icon,
230
+ config: {
231
+ env: {
232
+ ANTHROPIC_AUTH_TOKEN: extractedConfig.ANTHROPIC_AUTH_TOKEN,
233
+ ...extractedConfig
234
+ }
235
+ }
236
+ };
237
+ await (0, creator_1.saveProfile)(profile);
238
+ // 任务 4.11: 显示成功消息
239
+ console.log(chalk_1.default.green(`\n✓ Saved as "${profile.name}" (${profile.id})`));
240
+ }
241
+ // 任务 5.1-5.5: 快速保存模式
242
+ async function quickSaveCurrentConfig(settings) {
243
+ const extractedConfig = extractKnownFields(settings.env);
244
+ if (!extractedConfig.ANTHROPIC_AUTH_TOKEN) {
245
+ console.log(chalk_1.default.red('✗ Missing required field: ANTHROPIC_AUTH_TOKEN'));
246
+ return;
247
+ }
248
+ const providerType = (0, loader_1.getCurrentProvider)(settings);
249
+ const suggestedId = generateSmartId(providerType, extractedConfig);
250
+ const suggestedName = generateSmartName(providerType);
251
+ const preset = creator_2.PROVIDER_PRESETS.find(p => p.id === providerType);
252
+ // 任务 5.2: 只提示输入 ID 和 name
253
+ const answers = await (0, prompts_1.default)([
254
+ {
255
+ type: 'text',
256
+ name: 'id',
257
+ message: 'Profile ID:',
258
+ initial: suggestedId,
259
+ validate: async (val) => {
260
+ if (!val.trim())
261
+ return 'ID is required';
262
+ const sanitized = (0, creator_3.sanitizeId)(val);
263
+ if (await (0, creator_1.profileExists)(sanitized)) {
264
+ return `Profile "${sanitized}" already exists`;
265
+ }
266
+ return true;
267
+ }
268
+ },
269
+ {
270
+ type: 'text',
271
+ name: 'name',
272
+ message: 'Profile name:',
273
+ initial: suggestedName,
274
+ validate: (val) => val.trim().length > 0 || 'Name is required'
275
+ }
276
+ ]);
277
+ if (!answers.id || !answers.name) {
278
+ throw new Error('User cancelled');
279
+ }
280
+ // 任务 5.3: 使用检测到的 preset icon
281
+ const profile = {
282
+ id: (0, creator_3.sanitizeId)(answers.id),
283
+ name: answers.name,
284
+ icon: preset?.icon || '📦',
285
+ config: {
286
+ env: {
287
+ ANTHROPIC_AUTH_TOKEN: extractedConfig.ANTHROPIC_AUTH_TOKEN,
288
+ ...extractedConfig
289
+ }
290
+ }
291
+ };
292
+ try {
293
+ await (0, creator_1.saveProfile)(profile);
294
+ // 任务 5.5: 显示简洁的成功消息
295
+ console.log(chalk_1.default.green(`✓ Saved as "${profile.name}"\n`));
296
+ }
297
+ catch (err) {
298
+ // 任务 5.4: 捕获 ID 冲突异常
299
+ if (err.message.includes('already exists')) {
300
+ console.log(chalk_1.default.red(`✗ Profile "${profile.id}" already exists`));
301
+ throw new Error('Profile ID conflict');
302
+ }
303
+ throw err;
304
+ }
305
+ }
306
+ //# sourceMappingURL=saver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"saver.js","sourceRoot":"","sources":["../../../src/lib/config/saver.ts"],"names":[],"mappings":";;;;;AAoBA,gDAYC;AAGD,8BAGC;AAGD,sDA2BC;AAGD,0CAiBC;AAGD,8CAGC;AAGD,kDAuBC;AAGD,kDASC;AAGD,8CA6HC;AAGD,wDAmEC;AA1UD,sDAA8B;AAC9B,kDAA0B;AAE1B,qCAA+F;AAC/F,uCAA4E;AAC5E,uCAA6C;AAC7C,uCAAuC;AAEvC,oBAAoB;AACpB,MAAM,YAAY,GAAG;IACnB,sBAAsB;IACtB,oBAAoB;IACpB,+BAA+B;IAC/B,gCAAgC;IAChC,8BAA8B;IAC9B,gBAAgB;IAChB,0CAA0C;CAC3C,CAAC;AAEF,iBAAiB;AACjB,SAAgB,kBAAkB,CAAC,GAAuC;IACxE,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,IAAI,CAAC,GAAG;QAAE,OAAO,MAAM,CAAC;IAExB,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAC/B,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACb,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,sBAAsB;AACtB,SAAgB,SAAS,CAAC,KAAa;IACrC,IAAI,KAAK,CAAC,MAAM,IAAI,EAAE;QAAE,OAAO,KAAK,CAAC;IACrC,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,mBAAmB;AACnB,SAAgB,qBAAqB,CAAC,MAA8B,EAAE,YAA2B;IAC/F,MAAM,MAAM,GAAG,0BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IAEjE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,MAAM,EAAE,IAAI,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IAElE,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,IAAI,MAAM,CAAC,6BAA6B,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,6BAA6B,EAAE,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,IAAI,MAAM,CAAC,8BAA8B,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC;IAChF,CAAC;IAED,IAAI,MAAM,CAAC,4BAA4B,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,sBAAsB;AACtB,SAAgB,eAAe,CAAC,YAA2B,EAAE,MAA8B;IACzF,qBAAqB;IACrB,IAAI,YAAY,KAAK,QAAQ,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC3D,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC;YAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAChE,OAAO,IAAA,oBAAU,EAAC,MAAM,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,uBAAuB;YACvB,OAAO,IAAA,oBAAU,EAAC,YAAY,IAAI,QAAQ,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,OAAO,YAAY,KAAK,WAAW;QACjC,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE;QAC3B,CAAC,CAAC,IAAA,oBAAU,EAAC,YAAY,IAAI,QAAQ,CAAC,CAAC;AAC3C,CAAC;AAED,iBAAiB;AACjB,SAAgB,iBAAiB,CAAC,YAA2B;IAC3D,MAAM,MAAM,GAAG,0BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IACjE,OAAO,MAAM,EAAE,IAAI,IAAI,iBAAiB,CAAC;AAC3C,CAAC;AAED,qBAAqB;AACd,KAAK,UAAU,mBAAmB,CAAC,MAA8B;IACtE,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;IACtC,MAAM,OAAO,GAAsB,EAAE,CAAC;IAEtC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,sBAAsB;QACtB,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB;YACrC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,KAAK,MAAM,CAAC,kBAAkB,EAAE,CAAC;YACxE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACtB,SAAS;QACX,CAAC;QAED,4BAA4B;QAC5B,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB;YACvC,MAAM,CAAC,oBAAoB;YAC3B,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;gBACxD,MAAM,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;YACjD,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IAED,0BAA0B;IAC1B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,mBAAmB;AACnB,SAAgB,mBAAmB,CAAC,OAAwB,EAAE,MAA8B;IAC1F,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,kBAAkB,KAAK,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACxE,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QACzD,MAAM,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QAClD,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,qBAAqB;AACd,KAAK,UAAU,iBAAiB;IACrC,mCAAmC;IACnC,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;IACtC,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEzD,iBAAiB;IACjB,IAAI,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC7E,OAAO;IACT,CAAC;IAED,sBAAsB;IACtB,MAAM,gBAAgB,GAAG,IAAA,4BAAmB,EAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAY,GAAE,CAAC;QACtC,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,gBAAgB,CAAC,CAAC;QAErE,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,6CAA6C,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;YAEtH,mBAAmB;YACnB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;gBACnC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;gBAClB,OAAO,EAAE,uBAAuB;gBAChC,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;gBACvC,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,MAAM,YAAY,GAAG,IAAA,2BAAkB,EAAC,QAAQ,CAAC,CAAC;IAClD,qBAAqB,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;IAErD,oBAAoB;IACpB,MAAM,eAAe,GAAG,MAAM,mBAAmB,CAAC,eAAe,CAAC,CAAC;IACnE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;QACjE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YAC1B,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,OAAO,mBAAmB,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QAEH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YAChC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,4BAA4B;YACrC,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;YACvC,OAAO;QACT,CAAC;IACH,CAAC;IAED,yBAAyB;IACzB,MAAM,WAAW,GAAG,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,0BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IAEjE,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC5B;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,WAAW;YACpB,+BAA+B;YAC/B,QAAQ,EAAE,KAAK,EAAE,GAAW,EAAE,EAAE;gBAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;oBAAE,OAAO,gBAAgB,CAAC;gBACzC,MAAM,SAAS,GAAG,IAAA,oBAAU,EAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,MAAM,IAAA,uBAAa,EAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,OAAO,YAAY,SAAS,kBAAkB,CAAC;gBACjD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB;SACvE;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,yBAAyB;SACnC;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;SAC9B;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;QACvC,OAAO;IACT,CAAC;IAED,oCAAoC;IACpC,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,IAAA,oBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,SAAS;QAC7C,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,MAAM,EAAE;YACN,GAAG,EAAE;gBACH,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;gBAC1D,GAAG,eAAe;aACnB;SACF;KACF,CAAC;IAEF,MAAM,IAAA,qBAAiB,EAAC,OAAO,CAAC,CAAC;IAEjC,kBAAkB;IAClB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED,qBAAqB;AACd,KAAK,UAAU,sBAAsB,CAAC,QAAkB;IAC7D,MAAM,eAAe,GAAG,kBAAkB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAEzD,IAAI,CAAC,eAAe,CAAC,oBAAoB,EAAE,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;QACzE,OAAO;IACT,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,2BAAkB,EAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,WAAW,GAAG,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,0BAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,YAAY,CAAC,CAAC;IAEjE,0BAA0B;IAC1B,MAAM,OAAO,GAAG,MAAM,IAAA,iBAAO,EAAC;QAC5B;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,IAAI;YACV,OAAO,EAAE,aAAa;YACtB,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,KAAK,EAAE,GAAW,EAAE,EAAE;gBAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;oBAAE,OAAO,gBAAgB,CAAC;gBACzC,MAAM,SAAS,GAAG,IAAA,oBAAU,EAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,MAAM,IAAA,uBAAa,EAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,OAAO,YAAY,SAAS,kBAAkB,CAAC;gBACjD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;SACF;QACD;YACE,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,eAAe;YACxB,OAAO,EAAE,aAAa;YACtB,QAAQ,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB;SACvE;KACF,CAAC,CAAC;IAEH,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,6BAA6B;IAC7B,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,IAAA,oBAAU,EAAC,OAAO,CAAC,EAAE,CAAC;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,IAAI;QAC1B,MAAM,EAAE;YACN,GAAG,EAAE;gBACH,oBAAoB,EAAE,eAAe,CAAC,oBAAoB;gBAC1D,GAAG,eAAe;aACnB;SACF;KACF,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,IAAA,qBAAiB,EAAC,OAAO,CAAC,CAAC;QACjC,oBAAoB;QACpB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,eAAe,OAAO,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,qBAAqB;QACrB,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,EAAE,kBAAkB,CAAC,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,10 +1,11 @@
1
1
  {
2
2
  "name": "@supertiny99/cc-switch",
3
- "version": "1.0.8",
3
+ "version": "1.2.0",
4
4
  "description": "Quick TUI for switching Claude Code API providers - fast provider/token switching when quota is exhausted",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
- "cc-switch": "./dist/index.js"
7
+ "cc-switch": "./dist/index.js",
8
+ "ccs": "./dist/index.js"
8
9
  },
9
10
  "files": [
10
11
  "dist",