@kaitranntt/ccs 7.26.0 → 7.26.1-dev.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.
Files changed (98) hide show
  1. package/dist/cliproxy/auth/oauth-process.js +1 -1
  2. package/dist/cliproxy/auth/oauth-process.js.map +1 -1
  3. package/dist/cliproxy/binary/extractor.d.ts +2 -2
  4. package/dist/cliproxy/binary/extractor.d.ts.map +1 -1
  5. package/dist/cliproxy/binary/extractor.js +4 -3
  6. package/dist/cliproxy/binary/extractor.js.map +1 -1
  7. package/dist/cliproxy/binary/index.d.ts +1 -1
  8. package/dist/cliproxy/binary/index.d.ts.map +1 -1
  9. package/dist/cliproxy/binary/index.js +2 -1
  10. package/dist/cliproxy/binary/index.js.map +1 -1
  11. package/dist/cliproxy/binary/installer.d.ts +5 -4
  12. package/dist/cliproxy/binary/installer.d.ts.map +1 -1
  13. package/dist/cliproxy/binary/installer.js +29 -17
  14. package/dist/cliproxy/binary/installer.js.map +1 -1
  15. package/dist/cliproxy/binary/lifecycle.d.ts.map +1 -1
  16. package/dist/cliproxy/binary/lifecycle.js +11 -8
  17. package/dist/cliproxy/binary/lifecycle.js.map +1 -1
  18. package/dist/cliproxy/binary/tar-extractor.d.ts +2 -1
  19. package/dist/cliproxy/binary/tar-extractor.d.ts.map +1 -1
  20. package/dist/cliproxy/binary/tar-extractor.js +3 -3
  21. package/dist/cliproxy/binary/tar-extractor.js.map +1 -1
  22. package/dist/cliproxy/binary/types.d.ts +14 -2
  23. package/dist/cliproxy/binary/types.d.ts.map +1 -1
  24. package/dist/cliproxy/binary/types.js +19 -3
  25. package/dist/cliproxy/binary/types.js.map +1 -1
  26. package/dist/cliproxy/binary/version-cache.d.ts +28 -22
  27. package/dist/cliproxy/binary/version-cache.d.ts.map +1 -1
  28. package/dist/cliproxy/binary/version-cache.js +57 -34
  29. package/dist/cliproxy/binary/version-cache.js.map +1 -1
  30. package/dist/cliproxy/binary/version-checker.d.ts +9 -3
  31. package/dist/cliproxy/binary/version-checker.d.ts.map +1 -1
  32. package/dist/cliproxy/binary/version-checker.js +21 -14
  33. package/dist/cliproxy/binary/version-checker.js.map +1 -1
  34. package/dist/cliproxy/binary/zip-extractor.d.ts +2 -1
  35. package/dist/cliproxy/binary/zip-extractor.d.ts.map +1 -1
  36. package/dist/cliproxy/binary/zip-extractor.js +3 -3
  37. package/dist/cliproxy/binary/zip-extractor.js.map +1 -1
  38. package/dist/cliproxy/binary-manager.d.ts +9 -7
  39. package/dist/cliproxy/binary-manager.d.ts.map +1 -1
  40. package/dist/cliproxy/binary-manager.js +28 -20
  41. package/dist/cliproxy/binary-manager.js.map +1 -1
  42. package/dist/cliproxy/cliproxy-executor.d.ts.map +1 -1
  43. package/dist/cliproxy/cliproxy-executor.js +5 -4
  44. package/dist/cliproxy/cliproxy-executor.js.map +1 -1
  45. package/dist/cliproxy/service-manager.d.ts.map +1 -1
  46. package/dist/cliproxy/service-manager.js +6 -1
  47. package/dist/cliproxy/service-manager.js.map +1 -1
  48. package/dist/cliproxy/services/binary-service.d.ts +6 -6
  49. package/dist/cliproxy/services/binary-service.d.ts.map +1 -1
  50. package/dist/cliproxy/services/binary-service.js +54 -22
  51. package/dist/cliproxy/services/binary-service.js.map +1 -1
  52. package/dist/cliproxy/session-tracker.d.ts +4 -1
  53. package/dist/cliproxy/session-tracker.d.ts.map +1 -1
  54. package/dist/cliproxy/session-tracker.js +3 -1
  55. package/dist/cliproxy/session-tracker.js.map +1 -1
  56. package/dist/cliproxy/types.d.ts +2 -0
  57. package/dist/cliproxy/types.d.ts.map +1 -1
  58. package/dist/cliproxy/types.js.map +1 -1
  59. package/dist/commands/cliproxy-command.d.ts.map +1 -1
  60. package/dist/commands/cliproxy-command.js +25 -15
  61. package/dist/commands/cliproxy-command.js.map +1 -1
  62. package/dist/config/unified-config-loader.d.ts.map +1 -1
  63. package/dist/config/unified-config-loader.js +4 -0
  64. package/dist/config/unified-config-loader.js.map +1 -1
  65. package/dist/ui/assets/{accounts-DmDtOjgI.js → accounts-ClRO9xRe.js} +1 -1
  66. package/dist/ui/assets/{alert-dialog-BRQuLTE0.js → alert-dialog-DFi20Kyu.js} +1 -1
  67. package/dist/ui/assets/{api-D8s9_3Vf.js → api-BpnXG9Bg.js} +1 -1
  68. package/dist/ui/assets/auth-section-Dvxm2fKF.js +1 -0
  69. package/dist/ui/assets/{backups-section-CD8WE3jo.js → backups-section-DRZ3sdMb.js} +1 -1
  70. package/dist/ui/assets/cliproxy-DfCPAvnX.js +3 -0
  71. package/dist/ui/assets/{cliproxy-control-panel-CL1taFji.js → cliproxy-control-panel-TVrFXe7F.js} +1 -1
  72. package/dist/ui/assets/{confirm-dialog-BrDkVCMB.js → confirm-dialog-DRaXid8b.js} +1 -1
  73. package/dist/ui/assets/{copilot-CeZzCZ47.js → copilot-CxS7F-wF.js} +3 -3
  74. package/dist/ui/assets/{globalenv-section-CU9L9qj2.js → globalenv-section-BAdk876f.js} +1 -1
  75. package/dist/ui/assets/{health-CxRN4wo5.js → health-DtEewGXR.js} +1 -1
  76. package/dist/ui/assets/{icons-TP-W6wBb.js → icons-MT_USDDP.js} +1 -1
  77. package/dist/ui/assets/index-9iuiv2P7.js +1 -0
  78. package/dist/ui/assets/{index-5ld5FlA0.js → index-Bqpm7XFW.js} +14 -14
  79. package/dist/ui/assets/{index-B8SMrsmS.js → index-BxW8t4Z6.js} +1 -1
  80. package/dist/ui/assets/{index-BjlrUl8j.css → index-CRayOc33.css} +1 -1
  81. package/dist/ui/assets/index-CWHCl8iV.js +1 -0
  82. package/dist/ui/assets/{index-DoymmWw8.js → index-CtbouR3A.js} +1 -1
  83. package/dist/ui/assets/proxy-status-widget-DNGPVCQ7.js +1 -0
  84. package/dist/ui/assets/{shared-XYu0X19W.js → shared-Axa1XCh5.js} +1 -1
  85. package/dist/ui/assets/{switch-BUYlYaJx.js → switch-D7uSKm8B.js} +1 -1
  86. package/dist/ui/assets/{tanstack-C1q4365B.js → tanstack-ChZysrI1.js} +2 -2
  87. package/dist/ui/index.html +4 -4
  88. package/dist/web-server/routes/cliproxy-stats-routes.d.ts.map +1 -1
  89. package/dist/web-server/routes/cliproxy-stats-routes.js +14 -2
  90. package/dist/web-server/routes/cliproxy-stats-routes.js.map +1 -1
  91. package/dist/web-server/routes/proxy-routes.d.ts.map +1 -1
  92. package/dist/web-server/routes/proxy-routes.js +3 -2
  93. package/dist/web-server/routes/proxy-routes.js.map +1 -1
  94. package/package.json +1 -1
  95. package/dist/ui/assets/auth-section-6c47NtRw.js +0 -1
  96. package/dist/ui/assets/cliproxy-B8mhLLOW.js +0 -3
  97. package/dist/ui/assets/index-5SlpA5l0.js +0 -1
  98. package/dist/ui/assets/index-74OuxlYT.js +0 -1
@@ -3,22 +3,23 @@
3
3
  * Handles reading/writing version cache to avoid excessive GitHub API calls.
4
4
  */
5
5
  import { VersionCache, VersionListCache } from './types';
6
+ import type { CLIProxyBackend } from '../types';
6
7
  /**
7
- * Get path to version cache file
8
+ * Get path to version cache file (backend-specific)
8
9
  */
9
- export declare function getVersionCachePath(): string;
10
+ export declare function getVersionCachePath(backend?: CLIProxyBackend): string;
10
11
  /**
11
- * Get path to version pin file
12
+ * Get path to version pin file (backend-specific)
12
13
  */
13
- export declare function getVersionPinPath(): string;
14
+ export declare function getVersionPinPath(backend?: CLIProxyBackend): string;
14
15
  /**
15
- * Read version cache if still valid
16
+ * Read version cache if still valid (backend-specific)
16
17
  */
17
- export declare function readVersionCache(): VersionCache | null;
18
+ export declare function readVersionCache(backend?: CLIProxyBackend): VersionCache | null;
18
19
  /**
19
- * Write version to cache
20
+ * Write version to cache (backend-specific)
20
21
  */
21
- export declare function writeVersionCache(version: string): void;
22
+ export declare function writeVersionCache(version: string, backend?: CLIProxyBackend): void;
22
23
  /**
23
24
  * Read installed version from .version file
24
25
  */
@@ -28,31 +29,36 @@ export declare function readInstalledVersion(binPath: string, fallbackVersion: s
28
29
  */
29
30
  export declare function writeInstalledVersion(binPath: string, version: string): void;
30
31
  /**
31
- * Get pinned version if one exists
32
+ * Get pinned version if one exists (backend-specific)
32
33
  */
33
- export declare function getPinnedVersion(): string | null;
34
+ export declare function getPinnedVersion(backend?: CLIProxyBackend): string | null;
34
35
  /**
35
- * Save pinned version to persist user's explicit choice
36
+ * Save pinned version to persist user's explicit choice (backend-specific)
36
37
  */
37
- export declare function savePinnedVersion(version: string): void;
38
+ export declare function savePinnedVersion(version: string, backend?: CLIProxyBackend): void;
38
39
  /**
39
- * Clear pinned version (unpin)
40
+ * Clear pinned version (unpin) - backend-specific
40
41
  */
41
- export declare function clearPinnedVersion(): void;
42
+ export declare function clearPinnedVersion(backend?: CLIProxyBackend): void;
42
43
  /**
43
- * Check if a version is currently pinned
44
+ * Check if a version is currently pinned (backend-specific)
44
45
  */
45
- export declare function isVersionPinned(): boolean;
46
+ export declare function isVersionPinned(backend?: CLIProxyBackend): boolean;
46
47
  /**
47
- * Get path to version list cache file
48
+ * Migrate old shared version pin to backend-specific location.
49
+ * Called once on first run after update.
48
50
  */
49
- export declare function getVersionListCachePath(): string;
51
+ export declare function migrateVersionPin(backend: CLIProxyBackend): void;
50
52
  /**
51
- * Read version list cache if still valid
53
+ * Get path to version list cache file (backend-specific)
52
54
  */
53
- export declare function readVersionListCache(): VersionListCache | null;
55
+ export declare function getVersionListCachePath(backend?: CLIProxyBackend): string;
54
56
  /**
55
- * Write version list to cache
57
+ * Read version list cache if still valid (backend-specific)
56
58
  */
57
- export declare function writeVersionListCache(cache: VersionListCache): void;
59
+ export declare function readVersionListCache(backend?: CLIProxyBackend): VersionListCache | null;
60
+ /**
61
+ * Write version list to cache (backend-specific)
62
+ */
63
+ export declare function writeVersionListCache(cache: VersionListCache, backend?: CLIProxyBackend): void;
58
64
  //# sourceMappingURL=version-cache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version-cache.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EACL,YAAY,EAGZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,GAAG,IAAI,CAoBtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAavD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAUrF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAO5E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,GAAG,IAAI,CAUhD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAQvD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CASzC;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAMD;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,gBAAgB,GAAG,IAAI,CAmB9D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CASnE"}
1
+ {"version":3,"file":"version-cache.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-cache.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EACL,YAAY,EAGZ,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,eAAiC,GAAG,MAAM,CAEtF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,eAAiC,GAAG,MAAM,CAEpF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,eAAiC,GAAG,YAAY,GAAG,IAAI,CAoBhG;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAiC,GACzC,IAAI,CAaN;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAUrF;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAO5E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,eAAiC,GAAG,MAAM,GAAG,IAAI,CAU1F;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAiC,GACzC,IAAI,CAQN;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,eAAiC,GAAG,IAAI,CASnF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,GAAE,eAAiC,GAAG,OAAO,CAEnF;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAgBhE;AAMD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,eAAiC,GAAG,MAAM,CAE1F;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,GAAE,eAAiC,GACzC,gBAAgB,GAAG,IAAI,CAmBzB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,gBAAgB,EACvB,OAAO,GAAE,eAAiC,GACzC,IAAI,CASN"}
@@ -27,30 +27,31 @@ var __importStar = (this && this.__importStar) || function (mod) {
27
27
  return result;
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.writeVersionListCache = exports.readVersionListCache = exports.getVersionListCachePath = exports.isVersionPinned = exports.clearPinnedVersion = exports.savePinnedVersion = exports.getPinnedVersion = exports.writeInstalledVersion = exports.readInstalledVersion = exports.writeVersionCache = exports.readVersionCache = exports.getVersionPinPath = exports.getVersionCachePath = void 0;
30
+ exports.writeVersionListCache = exports.readVersionListCache = exports.getVersionListCachePath = exports.migrateVersionPin = exports.isVersionPinned = exports.clearPinnedVersion = exports.savePinnedVersion = exports.getPinnedVersion = exports.writeInstalledVersion = exports.readInstalledVersion = exports.writeVersionCache = exports.readVersionCache = exports.getVersionPinPath = exports.getVersionCachePath = void 0;
31
31
  const fs = __importStar(require("fs"));
32
32
  const path = __importStar(require("path"));
33
33
  const config_generator_1 = require("../config-generator");
34
34
  const types_1 = require("./types");
35
+ const platform_detector_1 = require("../platform-detector");
35
36
  /**
36
- * Get path to version cache file
37
+ * Get path to version cache file (backend-specific)
37
38
  */
38
- function getVersionCachePath() {
39
- return path.join((0, config_generator_1.getCliproxyDir)(), '.version-cache.json');
39
+ function getVersionCachePath(backend = platform_detector_1.DEFAULT_BACKEND) {
40
+ return path.join((0, config_generator_1.getBinDir)(), backend, '.version-cache.json');
40
41
  }
41
42
  exports.getVersionCachePath = getVersionCachePath;
42
43
  /**
43
- * Get path to version pin file
44
+ * Get path to version pin file (backend-specific)
44
45
  */
45
- function getVersionPinPath() {
46
- return path.join((0, config_generator_1.getBinDir)(), types_1.VERSION_PIN_FILE);
46
+ function getVersionPinPath(backend = platform_detector_1.DEFAULT_BACKEND) {
47
+ return path.join((0, config_generator_1.getBinDir)(), backend, types_1.VERSION_PIN_FILE);
47
48
  }
48
49
  exports.getVersionPinPath = getVersionPinPath;
49
50
  /**
50
- * Read version cache if still valid
51
+ * Read version cache if still valid (backend-specific)
51
52
  */
52
- function readVersionCache() {
53
- const cachePath = getVersionCachePath();
53
+ function readVersionCache(backend = platform_detector_1.DEFAULT_BACKEND) {
54
+ const cachePath = getVersionCachePath(backend);
54
55
  if (!fs.existsSync(cachePath)) {
55
56
  return null;
56
57
  }
@@ -70,10 +71,10 @@ function readVersionCache() {
70
71
  }
71
72
  exports.readVersionCache = readVersionCache;
72
73
  /**
73
- * Write version to cache
74
+ * Write version to cache (backend-specific)
74
75
  */
75
- function writeVersionCache(version) {
76
- const cachePath = getVersionCachePath();
76
+ function writeVersionCache(version, backend = platform_detector_1.DEFAULT_BACKEND) {
77
+ const cachePath = getVersionCachePath(backend);
77
78
  const cache = {
78
79
  latestVersion: version,
79
80
  checkedAt: Date.now(),
@@ -117,10 +118,10 @@ function writeInstalledVersion(binPath, version) {
117
118
  }
118
119
  exports.writeInstalledVersion = writeInstalledVersion;
119
120
  /**
120
- * Get pinned version if one exists
121
+ * Get pinned version if one exists (backend-specific)
121
122
  */
122
- function getPinnedVersion() {
123
- const pinPath = getVersionPinPath();
123
+ function getPinnedVersion(backend = platform_detector_1.DEFAULT_BACKEND) {
124
+ const pinPath = getVersionPinPath(backend);
124
125
  if (!fs.existsSync(pinPath)) {
125
126
  return null;
126
127
  }
@@ -133,10 +134,10 @@ function getPinnedVersion() {
133
134
  }
134
135
  exports.getPinnedVersion = getPinnedVersion;
135
136
  /**
136
- * Save pinned version to persist user's explicit choice
137
+ * Save pinned version to persist user's explicit choice (backend-specific)
137
138
  */
138
- function savePinnedVersion(version) {
139
- const pinPath = getVersionPinPath();
139
+ function savePinnedVersion(version, backend = platform_detector_1.DEFAULT_BACKEND) {
140
+ const pinPath = getVersionPinPath(backend);
140
141
  try {
141
142
  fs.mkdirSync(path.dirname(pinPath), { recursive: true });
142
143
  fs.writeFileSync(pinPath, version, 'utf8');
@@ -147,10 +148,10 @@ function savePinnedVersion(version) {
147
148
  }
148
149
  exports.savePinnedVersion = savePinnedVersion;
149
150
  /**
150
- * Clear pinned version (unpin)
151
+ * Clear pinned version (unpin) - backend-specific
151
152
  */
152
- function clearPinnedVersion() {
153
- const pinPath = getVersionPinPath();
153
+ function clearPinnedVersion(backend = platform_detector_1.DEFAULT_BACKEND) {
154
+ const pinPath = getVersionPinPath(backend);
154
155
  if (fs.existsSync(pinPath)) {
155
156
  try {
156
157
  fs.unlinkSync(pinPath);
@@ -162,26 +163,48 @@ function clearPinnedVersion() {
162
163
  }
163
164
  exports.clearPinnedVersion = clearPinnedVersion;
164
165
  /**
165
- * Check if a version is currently pinned
166
+ * Check if a version is currently pinned (backend-specific)
166
167
  */
167
- function isVersionPinned() {
168
- return getPinnedVersion() !== null;
168
+ function isVersionPinned(backend = platform_detector_1.DEFAULT_BACKEND) {
169
+ return getPinnedVersion(backend) !== null;
169
170
  }
170
171
  exports.isVersionPinned = isVersionPinned;
172
+ /**
173
+ * Migrate old shared version pin to backend-specific location.
174
+ * Called once on first run after update.
175
+ */
176
+ function migrateVersionPin(backend) {
177
+ const oldPinPath = path.join((0, config_generator_1.getBinDir)(), types_1.VERSION_PIN_FILE);
178
+ if (!fs.existsSync(oldPinPath))
179
+ return;
180
+ try {
181
+ const oldVersion = fs.readFileSync(oldPinPath, 'utf8').trim();
182
+ if (!oldVersion)
183
+ return;
184
+ // Save to new backend-specific location
185
+ savePinnedVersion(oldVersion, backend);
186
+ // Delete old shared file
187
+ fs.unlinkSync(oldPinPath);
188
+ }
189
+ catch {
190
+ // Silent fail - not critical
191
+ }
192
+ }
193
+ exports.migrateVersionPin = migrateVersionPin;
171
194
  // ==================== Version List Cache ====================
172
195
  const VERSION_LIST_CACHE_FILE = '.version-list-cache.json';
173
196
  /**
174
- * Get path to version list cache file
197
+ * Get path to version list cache file (backend-specific)
175
198
  */
176
- function getVersionListCachePath() {
177
- return path.join((0, config_generator_1.getCliproxyDir)(), VERSION_LIST_CACHE_FILE);
199
+ function getVersionListCachePath(backend = platform_detector_1.DEFAULT_BACKEND) {
200
+ return path.join((0, config_generator_1.getBinDir)(), backend, VERSION_LIST_CACHE_FILE);
178
201
  }
179
202
  exports.getVersionListCachePath = getVersionListCachePath;
180
203
  /**
181
- * Read version list cache if still valid
204
+ * Read version list cache if still valid (backend-specific)
182
205
  */
183
- function readVersionListCache() {
184
- const cachePath = getVersionListCachePath();
206
+ function readVersionListCache(backend = platform_detector_1.DEFAULT_BACKEND) {
207
+ const cachePath = getVersionListCachePath(backend);
185
208
  if (!fs.existsSync(cachePath)) {
186
209
  return null;
187
210
  }
@@ -200,10 +223,10 @@ function readVersionListCache() {
200
223
  }
201
224
  exports.readVersionListCache = readVersionListCache;
202
225
  /**
203
- * Write version list to cache
226
+ * Write version list to cache (backend-specific)
204
227
  */
205
- function writeVersionListCache(cache) {
206
- const cachePath = getVersionListCachePath();
228
+ function writeVersionListCache(cache, backend = platform_detector_1.DEFAULT_BACKEND) {
229
+ const cachePath = getVersionListCachePath(backend);
207
230
  try {
208
231
  fs.mkdirSync(path.dirname(cachePath), { recursive: true });
209
232
  fs.writeFileSync(cachePath, JSON.stringify(cache), 'utf8');
@@ -1 +1 @@
1
- {"version":3,"file":"version-cache.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-cache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"version-cache.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-cache.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  * Handles checking GitHub API for latest version and comparing semver.
4
4
  */
5
5
  import { UpdateCheckResult, VersionListResult } from './types';
6
+ import type { CLIProxyBackend } from '../types';
6
7
  /**
7
8
  * Compare semver versions (true if latest > current)
8
9
  * Handles CLIProxyAPIPlus versioning: strips -0 suffix before comparison
@@ -15,16 +16,21 @@ export declare function isNewerVersion(latest: string, current: string): boolean
15
16
  export declare function isVersionFaulty(version: string): boolean;
16
17
  /**
17
18
  * Fetch latest version from GitHub API
19
+ * @param verbose Enable verbose logging
20
+ * @param backend Backend to fetch version for (uses correct GitHub repo)
18
21
  */
19
- export declare function fetchLatestVersion(verbose?: boolean): Promise<string>;
22
+ export declare function fetchLatestVersion(verbose?: boolean, backend?: CLIProxyBackend): Promise<string>;
20
23
  /**
21
24
  * Check for updates by comparing installed version with latest release
22
25
  * Uses cache to avoid hitting GitHub API on every run
26
+ * Cache is backend-specific to handle different repos for original vs plus
23
27
  */
24
- export declare function checkForUpdates(binPath: string, configVersion: string, verbose?: boolean): Promise<UpdateCheckResult>;
28
+ export declare function checkForUpdates(binPath: string, configVersion: string, verbose?: boolean, backend?: CLIProxyBackend): Promise<UpdateCheckResult>;
25
29
  /**
26
30
  * Fetch all available versions from GitHub releases
27
31
  * Caches result for 1 hour to avoid rate limiting
32
+ * @param verbose Enable verbose logging
33
+ * @param backend Backend to fetch versions for (uses correct GitHub repo)
28
34
  */
29
- export declare function fetchAllVersions(verbose?: boolean): Promise<VersionListResult>;
35
+ export declare function fetchAllVersions(verbose?: boolean, backend?: CLIProxyBackend): Promise<VersionListResult>;
30
36
  //# sourceMappingURL=version-checker.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"version-checker.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-checker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,EACL,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAGjB;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAkBvE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKxD;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAUzE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,OAAO,UAAQ,GACd,OAAO,CAAC,iBAAiB,CAAC,CA8B5B;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAoClF"}
1
+ {"version":3,"file":"version-checker.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-checker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAoB,MAAM,SAAS,CAAC;AAMjF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAkBvE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKxD;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,UAAQ,EACf,OAAO,GAAE,eAAiC,GACzC,OAAO,CAAC,MAAM,CAAC,CAWjB;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,OAAO,UAAQ,EACf,OAAO,GAAE,eAAiC,GACzC,OAAO,CAAC,iBAAiB,CAAC,CA8B5B;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,UAAQ,EACf,OAAO,GAAE,eAAiC,GACzC,OAAO,CAAC,iBAAiB,CAAC,CAqC5B"}
@@ -46,9 +46,12 @@ function isVersionFaulty(version) {
46
46
  exports.isVersionFaulty = isVersionFaulty;
47
47
  /**
48
48
  * Fetch latest version from GitHub API
49
+ * @param verbose Enable verbose logging
50
+ * @param backend Backend to fetch version for (uses correct GitHub repo)
49
51
  */
50
- async function fetchLatestVersion(verbose = false) {
51
- const response = await (0, downloader_1.fetchJson)(types_1.GITHUB_API_LATEST_RELEASE, verbose);
52
+ async function fetchLatestVersion(verbose = false, backend = platform_detector_1.DEFAULT_BACKEND) {
53
+ const urls = (0, types_1.getGitHubApiUrls)(backend);
54
+ const response = await (0, downloader_1.fetchJson)(urls.latestRelease, verbose);
52
55
  // Extract version from tag_name (format: "v6.5.27" or "6.5.27")
53
56
  const tagName = response.tag_name;
54
57
  if (!tagName) {
@@ -60,11 +63,12 @@ exports.fetchLatestVersion = fetchLatestVersion;
60
63
  /**
61
64
  * Check for updates by comparing installed version with latest release
62
65
  * Uses cache to avoid hitting GitHub API on every run
66
+ * Cache is backend-specific to handle different repos for original vs plus
63
67
  */
64
- async function checkForUpdates(binPath, configVersion, verbose = false) {
68
+ async function checkForUpdates(binPath, configVersion, verbose = false, backend = platform_detector_1.DEFAULT_BACKEND) {
65
69
  const currentVersion = (0, version_cache_1.readInstalledVersion)(binPath, configVersion);
66
- // Try cache first
67
- const cache = (0, version_cache_1.readVersionCache)();
70
+ // Try cache first (backend-specific)
71
+ const cache = (0, version_cache_1.readVersionCache)(backend);
68
72
  if (cache) {
69
73
  if (verbose) {
70
74
  console.error(`[cliproxy] Using cached version: ${cache.latestVersion}`);
@@ -77,10 +81,10 @@ async function checkForUpdates(binPath, configVersion, verbose = false) {
77
81
  checkedAt: cache.checkedAt,
78
82
  };
79
83
  }
80
- // Fetch from GitHub API
81
- const latestVersion = await fetchLatestVersion(verbose);
84
+ // Fetch from GitHub API (backend-specific repo)
85
+ const latestVersion = await fetchLatestVersion(verbose, backend);
82
86
  const now = Date.now();
83
- (0, version_cache_1.writeVersionCache)(latestVersion);
87
+ (0, version_cache_1.writeVersionCache)(latestVersion, backend);
84
88
  return {
85
89
  hasUpdate: isNewerVersion(latestVersion, currentVersion),
86
90
  currentVersion,
@@ -93,18 +97,21 @@ exports.checkForUpdates = checkForUpdates;
93
97
  /**
94
98
  * Fetch all available versions from GitHub releases
95
99
  * Caches result for 1 hour to avoid rate limiting
100
+ * @param verbose Enable verbose logging
101
+ * @param backend Backend to fetch versions for (uses correct GitHub repo)
96
102
  */
97
- async function fetchAllVersions(verbose = false) {
98
- // Try cache first
99
- const cache = (0, version_cache_1.readVersionListCache)();
103
+ async function fetchAllVersions(verbose = false, backend = platform_detector_1.DEFAULT_BACKEND) {
104
+ // Try cache first (backend-specific)
105
+ const cache = (0, version_cache_1.readVersionListCache)(backend);
100
106
  if (cache) {
101
107
  if (verbose) {
102
108
  console.error(`[cliproxy] Using cached version list (${cache.versions.length} versions)`);
103
109
  }
104
110
  return { ...cache, fromCache: true };
105
111
  }
106
- // Fetch from GitHub API
107
- const response = await (0, downloader_1.fetchJson)(types_1.GITHUB_API_ALL_RELEASES, verbose);
112
+ // Fetch from GitHub API (backend-specific repo)
113
+ const urls = (0, types_1.getGitHubApiUrls)(backend);
114
+ const response = await (0, downloader_1.fetchJson)(urls.allReleases, verbose);
108
115
  // Extract and normalize versions
109
116
  const releases = response;
110
117
  const versions = releases
@@ -121,7 +128,7 @@ async function fetchAllVersions(verbose = false) {
121
128
  fromCache: false,
122
129
  checkedAt: Date.now(),
123
130
  };
124
- (0, version_cache_1.writeVersionListCache)(result);
131
+ (0, version_cache_1.writeVersionListCache)(result, backend);
125
132
  return result;
126
133
  }
127
134
  exports.fetchAllVersions = fetchAllVersions;
@@ -1 +1 @@
1
- {"version":3,"file":"version-checker.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"version-checker.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/version-checker.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,9 @@
2
2
  * Zip Archive Extractor
3
3
  * Handles extraction of zip archives using Node.js built-in modules.
4
4
  */
5
+ import type { CLIProxyBackend } from '../types';
5
6
  /**
6
7
  * Extract zip archive using Node.js (simple implementation)
7
8
  */
8
- export declare function extractZip(archivePath: string, destDir: string, verbose?: boolean): Promise<void>;
9
+ export declare function extractZip(archivePath: string, destDir: string, verbose?: boolean, backend?: CLIProxyBackend): Promise<void>;
9
10
  //# sourceMappingURL=zip-extractor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"zip-extractor.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/zip-extractor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;GAEG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAiF/F"}
1
+ {"version":3,"file":"zip-extractor.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/zip-extractor.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD;;GAEG;AACH,wBAAgB,UAAU,CACxB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,UAAQ,EACf,OAAO,GAAE,eAAiC,GACzC,OAAO,CAAC,IAAI,CAAC,CAiFf"}
@@ -35,10 +35,10 @@ const platform_detector_1 = require("../platform-detector");
35
35
  /**
36
36
  * Extract zip archive using Node.js (simple implementation)
37
37
  */
38
- function extractZip(archivePath, destDir, verbose = false) {
38
+ function extractZip(archivePath, destDir, verbose = false, backend = platform_detector_1.DEFAULT_BACKEND) {
39
39
  return new Promise((resolve, reject) => {
40
- const execName = (0, platform_detector_1.getExecutableName)();
41
- const archiveBinaryName = (0, platform_detector_1.getArchiveBinaryName)();
40
+ const execName = (0, platform_detector_1.getExecutableName)(backend);
41
+ const archiveBinaryName = (0, platform_detector_1.getArchiveBinaryName)(backend);
42
42
  const buffer = fs.readFileSync(archivePath);
43
43
  // Find End of Central Directory record (EOCD)
44
44
  let eocdOffset = buffer.length - 22;
@@ -1 +1 @@
1
- {"version":3,"file":"zip-extractor.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/zip-extractor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zip-extractor.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/zip-extractor.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@
5
5
  * Pattern: Mirrors npm install behavior (fast check, download only when needed)
6
6
  */
7
7
  import { BinaryInfo, BinaryManagerConfig } from './types';
8
- import { UpdateCheckResult, getPinnedVersion, savePinnedVersion, clearPinnedVersion, isVersionPinned, getVersionPinPath } from './binary';
9
- type CLIProxyBackend = 'original' | 'plus';
8
+ import { UpdateCheckResult, getPinnedVersion, savePinnedVersion, clearPinnedVersion, isVersionPinned, getVersionPinPath, migrateVersionPin } from './binary';
9
+ import type { CLIProxyBackend } from './types';
10
10
  /**
11
11
  * Binary Manager class for CLIProxyAPI binary lifecycle
12
12
  */
@@ -30,13 +30,13 @@ export declare class BinaryManager {
30
30
  /** Convenience function respecting version pin */
31
31
  export declare function ensureCLIProxyBinary(verbose?: boolean): Promise<string>;
32
32
  /** Check if CLIProxyAPI binary is installed */
33
- export declare function isCLIProxyInstalled(): boolean;
33
+ export declare function isCLIProxyInstalled(backend?: CLIProxyBackend): boolean;
34
34
  /** Get CLIProxyAPI binary path (may not exist) */
35
- export declare function getCLIProxyPath(): string;
35
+ export declare function getCLIProxyPath(backend?: CLIProxyBackend): string;
36
36
  /** Get installed CLIProxyAPI version from .version file */
37
- export declare function getInstalledCliproxyVersion(): string;
37
+ export declare function getInstalledCliproxyVersion(backend?: CLIProxyBackend): string;
38
38
  /** Install a specific version of CLIProxyAPI */
39
- export declare function installCliproxyVersion(version: string, verbose?: boolean): Promise<void>;
39
+ export declare function installCliproxyVersion(version: string, verbose?: boolean, backend?: CLIProxyBackend): Promise<void>;
40
40
  /** Fetch the latest CLIProxyAPI version from GitHub API */
41
41
  export declare function fetchLatestCliproxyVersion(): Promise<string>;
42
42
  /** Update check result for API response */
@@ -46,12 +46,14 @@ export interface CliproxyUpdateCheckResult {
46
46
  latestVersion: string;
47
47
  fromCache: boolean;
48
48
  checkedAt: number;
49
+ backend: CLIProxyBackend;
50
+ backendLabel: string;
49
51
  isStable: boolean;
50
52
  maxStableVersion: string;
51
53
  stabilityMessage?: string;
52
54
  }
53
55
  /** Check for CLIProxyAPI binary updates */
54
56
  export declare function checkCliproxyUpdate(): Promise<CliproxyUpdateCheckResult>;
55
- export { getVersionPinPath, getPinnedVersion, savePinnedVersion, clearPinnedVersion, isVersionPinned, };
57
+ export { getVersionPinPath, getPinnedVersion, savePinnedVersion, clearPinnedVersion, isVersionPinned, migrateVersionPin, };
56
58
  export default BinaryManager;
57
59
  //# sourceMappingURL=binary-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"binary-manager.d.ts","sourceRoot":"","sources":["../../src/cliproxy/binary-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAK1D,OAAO,EACL,iBAAiB,EAMjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EAGlB,MAAM,UAAU,CAAC;AAElB,KAAK,eAAe,GAAG,UAAU,GAAG,MAAM,CAAC;AAoC3C;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,OAAO,CAAkB;gBAErB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM,EAAE,OAAO,CAAC,EAAE,eAAe;IAMhF,2EAA2E;IACrE,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,2EAA2E;IACrE,eAAe,IAAI,OAAO,CAAC,iBAAiB,CAAC;IAInD,yCAAyC;IACzC,aAAa,IAAI,MAAM;IAIvB,6BAA6B;IAC7B,iBAAiB,IAAI,OAAO;IAI5B,mCAAmC;IAC7B,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIjD,+CAA+C;IAC/C,YAAY,IAAI,IAAI;CAGrB;AAED,kDAAkD;AAClD,wBAAsB,oBAAoB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAe3E;AAED,+CAA+C;AAC/C,wBAAgB,mBAAmB,IAAI,OAAO,CAG7C;AAED,kDAAkD;AAClD,wBAAgB,eAAe,IAAI,MAAM,CAGxC;AAED,2DAA2D;AAC3D,wBAAgB,2BAA2B,IAAI,MAAM,CAGpD;AAED,gDAAgD;AAChD,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CA6B5F;AAED,2DAA2D;AAC3D,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC,CAIlE;AAED,2CAA2C;AAC3C,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAElB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,2CAA2C;AAC3C,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAiB9E;AAGD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,GAChB,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"binary-manager.d.ts","sourceRoot":"","sources":["../../src/cliproxy/binary-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAK1D,OAAO,EACL,iBAAiB,EAMjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EAGjB,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAqC/C;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,OAAO,CAAkB;gBAErB,MAAM,GAAE,OAAO,CAAC,mBAAmB,CAAM,EAAE,OAAO,CAAC,EAAE,eAAe;IAMhF,2EAA2E;IACrE,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,2EAA2E;IACrE,eAAe,IAAI,OAAO,CAAC,iBAAiB,CAAC;IASnD,yCAAyC;IACzC,aAAa,IAAI,MAAM;IAIvB,6BAA6B;IAC7B,iBAAiB,IAAI,OAAO;IAI5B,mCAAmC;IAC7B,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAIjD,+CAA+C;IAC/C,YAAY,IAAI,IAAI;CAGrB;AAED,kDAAkD;AAClD,wBAAsB,oBAAoB,CAAC,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAmB3E;AAED,+CAA+C;AAC/C,wBAAgB,mBAAmB,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAGtE;AAED,kDAAkD;AAClD,wBAAgB,eAAe,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAGjE;AAED,2DAA2D;AAC3D,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAM7E;AAED,gDAAgD;AAChD,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,UAAQ,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,IAAI,CAAC,CAgCf;AAED,2DAA2D;AAC3D,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,MAAM,CAAC,CAIlE;AAED,2CAA2C;AAC3C,MAAM,WAAW,yBAAyB;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IAErB,QAAQ,EAAE,OAAO,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,2CAA2C;AAC3C,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,yBAAyB,CAAC,CAqB9E;AAGD,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,GAClB,CAAC;AAEF,eAAe,aAAa,CAAC"}