@kaitranntt/ccs 7.61.1-dev.4 → 7.61.1-dev.6
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/cliproxy/binary/installer.d.ts.map +1 -1
- package/dist/cliproxy/binary/installer.js +32 -7
- package/dist/cliproxy/binary/installer.js.map +1 -1
- package/dist/docker/docker-bootstrap.js +18 -0
- package/dist/docker/docker-bootstrap.js.map +1 -1
- package/dist/web-server/health/cliproxy-checks.d.ts +4 -0
- package/dist/web-server/health/cliproxy-checks.d.ts.map +1 -1
- package/dist/web-server/health/cliproxy-checks.js +29 -14
- package/dist/web-server/health/cliproxy-checks.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EACL,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAQ9B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,UAAQ,GACd,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"installer.d.ts","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EACL,cAAc,EAKf,MAAM,sBAAsB,CAAC;AAQ9B;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,UAAQ,GACd,OAAO,CAAC,IAAI,CAAC,CAkFf;AAED,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAEhD,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,UAAQ,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAgB9F;AAED,sBAAsB;AACtB,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,MAAM,CAGhF;AAED,6BAA6B;AAC7B,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAErF;AAED,mCAAmC;AACnC,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC;IACT,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAC;IAC5C,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAAC,CAQR"}
|
|
@@ -47,12 +47,28 @@ async function downloadAndInstall(config, verbose = false) {
|
|
|
47
47
|
const checksumsUrl = (0, platform_detector_1.getChecksumsUrl)(config.version, backend);
|
|
48
48
|
const backendLabel = backend === 'plus' ? 'CLIProxy Plus' : 'CLIProxy';
|
|
49
49
|
fs.mkdirSync(config.binPath, { recursive: true });
|
|
50
|
-
// Delete existing binary before install to prevent mismatched binaries
|
|
50
|
+
// Delete existing binary before install to prevent mismatched binaries.
|
|
51
|
+
// Abort if binary is currently running (ETXTBSY) — cannot replace in-use binary.
|
|
52
|
+
// Happens in Docker when dashboard tries to update while bootstrap's instance is active.
|
|
51
53
|
const existingBinary = path.join(config.binPath, (0, platform_detector_1.getExecutableName)(backend));
|
|
52
54
|
if (fs.existsSync(existingBinary)) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
try {
|
|
56
|
+
fs.unlinkSync(existingBinary);
|
|
57
|
+
if (verbose)
|
|
58
|
+
console.error(`[cliproxy] Removed existing binary: ${existingBinary}`);
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
const code = error instanceof Error && 'code' in error ? error.code : '';
|
|
62
|
+
// ETXTBSY: Linux-specific error when unlinking a running executable.
|
|
63
|
+
// EBUSY on Windows may mean something different (mount point, etc.),
|
|
64
|
+
// so only treat ETXTBSY as "binary in use" to avoid misleading messages.
|
|
65
|
+
if (code === 'ETXTBSY') {
|
|
66
|
+
if (verbose)
|
|
67
|
+
console.error(`[cliproxy] Binary is running, cannot replace: ${existingBinary}`);
|
|
68
|
+
throw new Error('CLIProxy binary is currently running and cannot be replaced. Restart the container to apply the update.');
|
|
69
|
+
}
|
|
70
|
+
throw error;
|
|
71
|
+
}
|
|
56
72
|
}
|
|
57
73
|
const archivePath = path.join(config.binPath, `cliproxy-archive.${platform.extension}`);
|
|
58
74
|
const spinner = new progress_indicator_1.ProgressIndicator(`Downloading ${backendLabel} v${config.version}`);
|
|
@@ -98,9 +114,18 @@ function deleteBinary(binPath, verbose = false, backend) {
|
|
|
98
114
|
const effectiveBackend = backend ?? platform_detector_1.DEFAULT_BACKEND;
|
|
99
115
|
const binaryPath = path.join(binPath, (0, platform_detector_1.getExecutableName)(effectiveBackend));
|
|
100
116
|
if (fs.existsSync(binaryPath)) {
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
117
|
+
try {
|
|
118
|
+
fs.unlinkSync(binaryPath);
|
|
119
|
+
if (verbose)
|
|
120
|
+
console.error(`[cliproxy] Deleted: ${binaryPath}`);
|
|
121
|
+
}
|
|
122
|
+
catch (error) {
|
|
123
|
+
const code = error instanceof Error && 'code' in error ? error.code : '';
|
|
124
|
+
if (code === 'ETXTBSY') {
|
|
125
|
+
throw new Error('CLIProxy binary is currently running and cannot be deleted.');
|
|
126
|
+
}
|
|
127
|
+
throw error;
|
|
128
|
+
}
|
|
104
129
|
}
|
|
105
130
|
}
|
|
106
131
|
exports.deleteBinary = deleteBinary;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAE7B,4DAM8B;AAC9B,6CAAiD;AACjD,yCAA6D;AAC7D,2CAA6C;AAC7C,mDAAwD;AACxD,uEAAmE;AACnE,uCAAoC;AAEpC;;GAEG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAA2B,EAC3B,OAAO,GAAG,KAAK;IAEf,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,mCAAe,CAAC;IAClD,MAAM,QAAQ,GAAG,IAAA,kCAAc,EAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzD,MAAM,WAAW,GAAG,IAAA,kCAAc,EAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAA,mCAAe,EAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,MAAM,YAAY,GAAG,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;IAEvE,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAElD,
|
|
1
|
+
{"version":3,"file":"installer.js","sourceRoot":"","sources":["../../../src/cliproxy/binary/installer.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,8 @@ const binary_manager_1 = require("../cliproxy/binary-manager");
|
|
|
5
5
|
const config_generator_1 = require("../cliproxy/config-generator");
|
|
6
6
|
const port_manager_1 = require("../cliproxy/config/port-manager");
|
|
7
7
|
const path_resolver_1 = require("../cliproxy/config/path-resolver");
|
|
8
|
+
const session_tracker_1 = require("../cliproxy/session-tracker");
|
|
9
|
+
const binary_manager_2 = require("../cliproxy/binary-manager");
|
|
8
10
|
async function prepareIntegratedRuntime() {
|
|
9
11
|
const binaryPath = await (0, binary_manager_1.ensureCLIProxyBinary)(false);
|
|
10
12
|
const configPath = !(0, config_generator_1.configExists)(port_manager_1.CLIPROXY_DEFAULT_PORT)
|
|
@@ -24,8 +26,24 @@ async function runCliproxy() {
|
|
|
24
26
|
WRITABLE_PATH: (0, config_generator_1.getCliproxyWritablePath)(),
|
|
25
27
|
},
|
|
26
28
|
});
|
|
29
|
+
// Register session lock so dashboard can detect the running proxy
|
|
30
|
+
let sessionId;
|
|
31
|
+
child.on('spawn', () => {
|
|
32
|
+
if (!child.pid)
|
|
33
|
+
return;
|
|
34
|
+
try {
|
|
35
|
+
const version = (0, binary_manager_2.getInstalledCliproxyVersion)();
|
|
36
|
+
sessionId = (0, session_tracker_1.registerSession)(port_manager_1.CLIPROXY_DEFAULT_PORT, child.pid, version, 'plus');
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
console.error(`[cliproxy] Failed to register session lock: ${err instanceof Error ? err.message : String(err)}`);
|
|
40
|
+
}
|
|
41
|
+
});
|
|
27
42
|
child.on('error', reject);
|
|
28
43
|
child.on('close', (code) => {
|
|
44
|
+
if (sessionId) {
|
|
45
|
+
(0, session_tracker_1.unregisterSession)(sessionId, port_manager_1.CLIPROXY_DEFAULT_PORT);
|
|
46
|
+
}
|
|
29
47
|
resolve(code ?? 1);
|
|
30
48
|
});
|
|
31
49
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docker-bootstrap.js","sourceRoot":"","sources":["../../src/docker/docker-bootstrap.ts"],"names":[],"mappings":";;AAAA,iDAAsC;AACtC,+DAAkE;AAClE,mEAMsC;AACtC,kEAAwE;AACxE,oEAAyE;AAEzE,KAAK,UAAU,wBAAwB;IACrC,MAAM,UAAU,GAAG,MAAM,IAAA,qCAAoB,EAAC,KAAK,CAAC,CAAC;IACrD,MAAM,UAAU,GAAG,CAAC,IAAA,+BAAY,EAAC,oCAAqB,CAAC;QACrD,CAAC,CAAC,IAAA,iCAAc,EAAC,QAAQ,EAAE,oCAAqB,CAAC;QACjD,CAAC,CAAC,IAAA,0CAAuB,GAAE;YACzB,CAAC,CAAC,IAAA,mCAAgB,EAAC,oCAAqB,CAAC;YACzC,CAAC,CAAC,IAAA,qCAAqB,GAAE,CAAC;IAE9B,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AACpC,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,MAAM,wBAAwB,EAAE,CAAC;IACpE,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,KAAK,GAAG,IAAA,qBAAK,EAAC,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE;YACxD,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE;gBACH,GAAG,OAAO,CAAC,GAAG;gBACd,aAAa,EAAE,IAAA,0CAAuB,GAAE;aACzC;SACF,CAAC,CAAC;QAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;QAC9E,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,WAAW,EAAE,CAAC;AACvB,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;IAC5B,KAAK,IAAI,EAAE;SACR,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;QACjB,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC9B,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;QACf,OAAO,CAAC,KAAK,CACX,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;QACF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACP,CAAC"}
|
|
1
|
+
{"version":3,"file":"docker-bootstrap.js","sourceRoot":"","sources":["../../src/docker/docker-bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -18,6 +18,10 @@ export declare function checkCliproxyConfig(): HealthCheck;
|
|
|
18
18
|
export declare function checkOAuthProviders(): HealthCheck[];
|
|
19
19
|
/**
|
|
20
20
|
* Check CLIProxy port status
|
|
21
|
+
*
|
|
22
|
+
* Uses unified proxy detection (HTTP check first, then session lock, then
|
|
23
|
+
* port-process). This works reliably inside Docker containers where OS-level
|
|
24
|
+
* port detection tools (lsof/ss) may be unavailable.
|
|
21
25
|
*/
|
|
22
26
|
export declare function checkCliproxyPort(): Promise<HealthCheck>;
|
|
23
27
|
//# sourceMappingURL=cliproxy-checks.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliproxy-checks.d.ts","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAgDjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAmBjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,EAAE,CA4BnD;AAED
|
|
1
|
+
{"version":3,"file":"cliproxy-checks.d.ts","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI3C;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAgDjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,CAmBjD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,WAAW,EAAE,CA4BnD;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,WAAW,CAAC,CA2C9D"}
|
|
@@ -31,7 +31,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
31
31
|
exports.checkCliproxyPort = exports.checkOAuthProviders = exports.checkCliproxyConfig = exports.checkCliproxyBinary = void 0;
|
|
32
32
|
const fs = __importStar(require("fs"));
|
|
33
33
|
const cliproxy_1 = require("../../cliproxy");
|
|
34
|
-
const
|
|
34
|
+
const proxy_detector_1 = require("../../cliproxy/proxy-detector");
|
|
35
35
|
const platform_detector_1 = require("../../cliproxy/platform-detector");
|
|
36
36
|
const version_checker_1 = require("../../cliproxy/binary/version-checker");
|
|
37
37
|
/**
|
|
@@ -137,34 +137,49 @@ function checkOAuthProviders() {
|
|
|
137
137
|
exports.checkOAuthProviders = checkOAuthProviders;
|
|
138
138
|
/**
|
|
139
139
|
* Check CLIProxy port status
|
|
140
|
+
*
|
|
141
|
+
* Uses unified proxy detection (HTTP check first, then session lock, then
|
|
142
|
+
* port-process). This works reliably inside Docker containers where OS-level
|
|
143
|
+
* port detection tools (lsof/ss) may be unavailable.
|
|
140
144
|
*/
|
|
141
145
|
async function checkCliproxyPort() {
|
|
142
|
-
const
|
|
143
|
-
if (
|
|
146
|
+
const status = await (0, proxy_detector_1.detectRunningProxy)(cliproxy_1.CLIPROXY_DEFAULT_PORT);
|
|
147
|
+
if (status.running && status.verified) {
|
|
144
148
|
return {
|
|
145
149
|
id: 'cliproxy-port',
|
|
146
150
|
name: 'CLIProxy Port',
|
|
147
|
-
status: '
|
|
148
|
-
message:
|
|
149
|
-
details:
|
|
151
|
+
status: 'ok',
|
|
152
|
+
message: 'CLIProxy running',
|
|
153
|
+
details: status.pid ? `PID ${status.pid}` : `Detected via ${status.method}`,
|
|
150
154
|
};
|
|
151
155
|
}
|
|
152
|
-
if (
|
|
156
|
+
if (status.running) {
|
|
153
157
|
return {
|
|
154
158
|
id: 'cliproxy-port',
|
|
155
159
|
name: 'CLIProxy Port',
|
|
156
|
-
status: '
|
|
157
|
-
message: 'CLIProxy
|
|
158
|
-
details: `PID ${
|
|
160
|
+
status: 'warning',
|
|
161
|
+
message: 'CLIProxy starting',
|
|
162
|
+
details: status.pid ? `PID ${status.pid}` : `Detected via ${status.method}`,
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
if (status.blocked) {
|
|
166
|
+
return {
|
|
167
|
+
id: 'cliproxy-port',
|
|
168
|
+
name: 'CLIProxy Port',
|
|
169
|
+
status: 'warning',
|
|
170
|
+
message: status.blocker
|
|
171
|
+
? `Occupied by ${status.blocker.processName}`
|
|
172
|
+
: 'Port occupied by unknown process',
|
|
173
|
+
details: status.blocker ? `PID ${status.blocker.pid}` : undefined,
|
|
174
|
+
...(status.blocker && { fix: `Kill process: kill ${status.blocker.pid}` }),
|
|
159
175
|
};
|
|
160
176
|
}
|
|
161
177
|
return {
|
|
162
178
|
id: 'cliproxy-port',
|
|
163
179
|
name: 'CLIProxy Port',
|
|
164
|
-
status: '
|
|
165
|
-
message:
|
|
166
|
-
details:
|
|
167
|
-
fix: `Kill process: kill ${portProcess.pid}`,
|
|
180
|
+
status: 'info',
|
|
181
|
+
message: `${cliproxy_1.CLIPROXY_DEFAULT_PORT} free`,
|
|
182
|
+
details: 'Proxy not running',
|
|
168
183
|
};
|
|
169
184
|
}
|
|
170
185
|
exports.checkCliproxyPort = checkCliproxyPort;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cliproxy-checks.js","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,6CAOwB;AACxB,
|
|
1
|
+
{"version":3,"file":"cliproxy-checks.js","sourceRoot":"","sources":["../../../src/web-server/health/cliproxy-checks.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,6CAOwB;AACxB,kEAAmE;AAEnE,wEAA+E;AAC/E,2EAAwF;AAExF;;GAEG;AACH,SAAgB,mBAAmB;IACjC,IAAI,IAAA,8BAAmB,GAAE,EAAE,CAAC;QAC1B,MAAM,OAAO,GAAG,IAAA,sCAA2B,GAAE,CAAC;QAC9C,MAAM,UAAU,GAAG,IAAA,0BAAe,GAAE,CAAC;QAErC,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,IAAA,iCAAe,EAAC,OAAO,CAAC,CAAC;QAC1C,sCAAsC;QACtC,MAAM,UAAU,GAAG,IAAA,gCAAc,EAAC,OAAO,EAAE,+CAA2B,CAAC,CAAC;QAExE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;gBACL,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI,OAAO,WAAW;gBAC/B,OAAO,EAAE,UAAU;gBACnB,GAAG,EAAE,iCAAiC,+CAA2B,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;aACzF,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,EAAE,CAAC;YACf,OAAO;gBACL,EAAE,EAAE,iBAAiB;gBACrB,IAAI,EAAE,iBAAiB;gBACvB,MAAM,EAAE,SAAS;gBACjB,OAAO,EAAE,IAAI,OAAO,iBAAiB;gBACrC,OAAO,EAAE,UAAU;gBACnB,GAAG,EAAE,gCAAgC,+CAA2B,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE;aACxF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,IAAI,OAAO,EAAE;YACtB,OAAO,EAAE,UAAU;SACpB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,eAAe;QACxB,OAAO,EAAE,wBAAwB;KAClC,CAAC;AACJ,CAAC;AAhDD,kDAgDC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,MAAM,UAAU,GAAG,IAAA,gCAAqB,GAAE,CAAC;IAE3C,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,sBAAsB;SAChC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,iBAAiB;QACvB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,aAAa;QACtB,OAAO,EAAE,wBAAwB;KAClC,CAAC;AACJ,CAAC;AAnBD,kDAmBC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,MAAM,YAAY,GAAG,IAAA,2BAAgB,GAAE,CAAC;IACxC,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAExF,IAAI,MAAM,CAAC,aAAa,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7E,MAAM,CAAC,IAAI,CAAC;gBACV,EAAE,EAAE,SAAS,MAAM,CAAC,QAAQ,EAAE;gBAC9B,IAAI,EAAE,GAAG,YAAY,OAAO;gBAC5B,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,eAAe;gBACxB,OAAO,EAAE,QAAQ;aAClB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC;gBACV,EAAE,EAAE,SAAS,MAAM,CAAC,QAAQ,EAAE;gBAC9B,IAAI,EAAE,GAAG,YAAY,OAAO;gBAC5B,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,mBAAmB;gBAC5B,GAAG,EAAE,YAAY,MAAM,CAAC,QAAQ,SAAS;aAC1C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AA5BD,kDA4BC;AAED;;;;;;GAMG;AACI,KAAK,UAAU,iBAAiB;IACrC,MAAM,MAAM,GAAG,MAAM,IAAA,mCAAkB,EAAC,gCAAqB,CAAC,CAAC;IAE/D,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,OAAO;YACL,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,IAAI;YACZ,OAAO,EAAE,kBAAkB;YAC3B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,MAAM,EAAE;SAC5E,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO;YACL,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,MAAM,EAAE;SAC5E,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO;YACL,EAAE,EAAE,eAAe;YACnB,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,SAAS;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACrB,CAAC,CAAC,eAAe,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE;gBAC7C,CAAC,CAAC,kCAAkC;YACtC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS;YACjE,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,GAAG,EAAE,sBAAsB,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;SAC3E,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,GAAG,gCAAqB,OAAO;QACxC,OAAO,EAAE,mBAAmB;KAC7B,CAAC;AACJ,CAAC;AA3CD,8CA2CC"}
|