xray-manager 1.8.4 → 2.0.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.md +102 -42
- package/dist/cli.mjs +8587 -0
- package/dist/cli.mjs.map +7 -0
- package/package.json +13 -5
- package/dist/cli.d.ts +0 -11
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -134
- package/dist/cli.js.map +0 -1
- package/dist/commands/clash.d.ts +0 -20
- package/dist/commands/clash.d.ts.map +0 -1
- package/dist/commands/clash.js +0 -156
- package/dist/commands/clash.js.map +0 -1
- package/dist/commands/config.d.ts +0 -56
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/config.js +0 -461
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/interactive.d.ts +0 -55
- package/dist/commands/interactive.d.ts.map +0 -1
- package/dist/commands/interactive.js +0 -418
- package/dist/commands/interactive.js.map +0 -1
- package/dist/commands/logs.d.ts +0 -62
- package/dist/commands/logs.d.ts.map +0 -1
- package/dist/commands/logs.js +0 -389
- package/dist/commands/logs.js.map +0 -1
- package/dist/commands/quota.d.ts +0 -54
- package/dist/commands/quota.d.ts.map +0 -1
- package/dist/commands/quota.js +0 -661
- package/dist/commands/quota.js.map +0 -1
- package/dist/commands/review.d.ts +0 -8
- package/dist/commands/review.d.ts.map +0 -1
- package/dist/commands/review.js +0 -79
- package/dist/commands/review.js.map +0 -1
- package/dist/commands/service.d.ts +0 -43
- package/dist/commands/service.d.ts.map +0 -1
- package/dist/commands/service.js +0 -202
- package/dist/commands/service.js.map +0 -1
- package/dist/commands/user.d.ts +0 -49
- package/dist/commands/user.d.ts.map +0 -1
- package/dist/commands/user.js +0 -371
- package/dist/commands/user.js.map +0 -1
- package/dist/components/dashboard-widget.d.ts +0 -21
- package/dist/components/dashboard-widget.d.ts.map +0 -1
- package/dist/components/dashboard-widget.js +0 -234
- package/dist/components/dashboard-widget.js.map +0 -1
- package/dist/components/progress-bar.d.ts +0 -67
- package/dist/components/progress-bar.d.ts.map +0 -1
- package/dist/components/progress-bar.js +0 -138
- package/dist/components/progress-bar.js.map +0 -1
- package/dist/components/user-table.d.ts +0 -8
- package/dist/components/user-table.d.ts.map +0 -1
- package/dist/components/user-table.js +0 -91
- package/dist/components/user-table.js.map +0 -1
- package/dist/config/i18n.d.ts +0 -136
- package/dist/config/i18n.d.ts.map +0 -1
- package/dist/config/i18n.js +0 -323
- package/dist/config/i18n.js.map +0 -1
- package/dist/constants/error-codes.d.ts +0 -344
- package/dist/constants/error-codes.d.ts.map +0 -1
- package/dist/constants/error-codes.js +0 -462
- package/dist/constants/error-codes.js.map +0 -1
- package/dist/constants/exit-codes.d.ts +0 -49
- package/dist/constants/exit-codes.d.ts.map +0 -1
- package/dist/constants/exit-codes.js +0 -100
- package/dist/constants/exit-codes.js.map +0 -1
- package/dist/constants/paths.d.ts +0 -63
- package/dist/constants/paths.d.ts.map +0 -1
- package/dist/constants/paths.js +0 -78
- package/dist/constants/paths.js.map +0 -1
- package/dist/constants/quota.d.ts +0 -126
- package/dist/constants/quota.d.ts.map +0 -1
- package/dist/constants/quota.js +0 -135
- package/dist/constants/quota.js.map +0 -1
- package/dist/constants/review.d.ts +0 -14
- package/dist/constants/review.d.ts.map +0 -1
- package/dist/constants/review.js +0 -33
- package/dist/constants/review.js.map +0 -1
- package/dist/constants/supported-distros.d.ts +0 -17
- package/dist/constants/supported-distros.d.ts.map +0 -1
- package/dist/constants/supported-distros.js +0 -68
- package/dist/constants/supported-distros.js.map +0 -1
- package/dist/constants/theme.d.ts +0 -34
- package/dist/constants/theme.d.ts.map +0 -1
- package/dist/constants/theme.js +0 -52
- package/dist/constants/theme.js.map +0 -1
- package/dist/constants/timeouts.d.ts +0 -84
- package/dist/constants/timeouts.d.ts.map +0 -1
- package/dist/constants/timeouts.js +0 -111
- package/dist/constants/timeouts.js.map +0 -1
- package/dist/constants/ui-symbols.d.ts +0 -47
- package/dist/constants/ui-symbols.d.ts.map +0 -1
- package/dist/constants/ui-symbols.js +0 -48
- package/dist/constants/ui-symbols.js.map +0 -1
- package/dist/services/clash-config.d.ts +0 -16
- package/dist/services/clash-config.d.ts.map +0 -1
- package/dist/services/clash-config.js +0 -107
- package/dist/services/clash-config.js.map +0 -1
- package/dist/services/config-manager.d.ts +0 -90
- package/dist/services/config-manager.d.ts.map +0 -1
- package/dist/services/config-manager.js +0 -307
- package/dist/services/config-manager.js.map +0 -1
- package/dist/services/layout-manager.d.ts +0 -94
- package/dist/services/layout-manager.d.ts.map +0 -1
- package/dist/services/layout-manager.js +0 -192
- package/dist/services/layout-manager.js.map +0 -1
- package/dist/services/log-manager.d.ts +0 -157
- package/dist/services/log-manager.d.ts.map +0 -1
- package/dist/services/log-manager.js +0 -397
- package/dist/services/log-manager.js.map +0 -1
- package/dist/services/navigation-manager.d.ts +0 -23
- package/dist/services/navigation-manager.d.ts.map +0 -1
- package/dist/services/navigation-manager.js +0 -39
- package/dist/services/navigation-manager.js.map +0 -1
- package/dist/services/platform-detector.d.ts +0 -10
- package/dist/services/platform-detector.d.ts.map +0 -1
- package/dist/services/platform-detector.js +0 -106
- package/dist/services/platform-detector.js.map +0 -1
- package/dist/services/public-ip-manager.d.ts +0 -78
- package/dist/services/public-ip-manager.d.ts.map +0 -1
- package/dist/services/public-ip-manager.js +0 -296
- package/dist/services/public-ip-manager.js.map +0 -1
- package/dist/services/quota-enforcer.d.ts +0 -86
- package/dist/services/quota-enforcer.d.ts.map +0 -1
- package/dist/services/quota-enforcer.js +0 -151
- package/dist/services/quota-enforcer.js.map +0 -1
- package/dist/services/quota-manager.d.ts +0 -101
- package/dist/services/quota-manager.d.ts.map +0 -1
- package/dist/services/quota-manager.js +0 -257
- package/dist/services/quota-manager.js.map +0 -1
- package/dist/services/review/areas/community.d.ts +0 -9
- package/dist/services/review/areas/community.d.ts.map +0 -1
- package/dist/services/review/areas/community.js +0 -59
- package/dist/services/review/areas/community.js.map +0 -1
- package/dist/services/review/areas/contribution.d.ts +0 -9
- package/dist/services/review/areas/contribution.d.ts.map +0 -1
- package/dist/services/review/areas/contribution.js +0 -107
- package/dist/services/review/areas/contribution.js.map +0 -1
- package/dist/services/review/areas/documentation.d.ts +0 -9
- package/dist/services/review/areas/documentation.d.ts.map +0 -1
- package/dist/services/review/areas/documentation.js +0 -110
- package/dist/services/review/areas/documentation.js.map +0 -1
- package/dist/services/review/areas/license.d.ts +0 -9
- package/dist/services/review/areas/license.d.ts.map +0 -1
- package/dist/services/review/areas/license.js +0 -86
- package/dist/services/review/areas/license.js.map +0 -1
- package/dist/services/review/areas/quality.d.ts +0 -9
- package/dist/services/review/areas/quality.d.ts.map +0 -1
- package/dist/services/review/areas/quality.js +0 -84
- package/dist/services/review/areas/quality.js.map +0 -1
- package/dist/services/review/areas/security.d.ts +0 -9
- package/dist/services/review/areas/security.d.ts.map +0 -1
- package/dist/services/review/areas/security.js +0 -64
- package/dist/services/review/areas/security.js.map +0 -1
- package/dist/services/review/evidence.d.ts +0 -10
- package/dist/services/review/evidence.d.ts.map +0 -1
- package/dist/services/review/evidence.js +0 -40
- package/dist/services/review/evidence.js.map +0 -1
- package/dist/services/review/recommendations-filter.d.ts +0 -12
- package/dist/services/review/recommendations-filter.d.ts.map +0 -1
- package/dist/services/review/recommendations-filter.js +0 -20
- package/dist/services/review/recommendations-filter.js.map +0 -1
- package/dist/services/review/repo-scanner.d.ts +0 -8
- package/dist/services/review/repo-scanner.d.ts.map +0 -1
- package/dist/services/review/repo-scanner.js +0 -15
- package/dist/services/review/repo-scanner.js.map +0 -1
- package/dist/services/review/report-renderer.d.ts +0 -15
- package/dist/services/review/report-renderer.d.ts.map +0 -1
- package/dist/services/review/report-renderer.js +0 -120
- package/dist/services/review/report-renderer.js.map +0 -1
- package/dist/services/review/review-engine.d.ts +0 -15
- package/dist/services/review/review-engine.d.ts.map +0 -1
- package/dist/services/review/review-engine.js +0 -61
- package/dist/services/review/review-engine.js.map +0 -1
- package/dist/services/review/summary-builder.d.ts +0 -8
- package/dist/services/review/summary-builder.d.ts.map +0 -1
- package/dist/services/review/summary-builder.js +0 -26
- package/dist/services/review/summary-builder.js.map +0 -1
- package/dist/services/screen-manager.d.ts +0 -13
- package/dist/services/screen-manager.d.ts.map +0 -1
- package/dist/services/screen-manager.js +0 -42
- package/dist/services/screen-manager.js.map +0 -1
- package/dist/services/stats-config-manager.d.ts +0 -110
- package/dist/services/stats-config-manager.d.ts.map +0 -1
- package/dist/services/stats-config-manager.js +0 -443
- package/dist/services/stats-config-manager.js.map +0 -1
- package/dist/services/systemd-manager.d.ts +0 -197
- package/dist/services/systemd-manager.d.ts.map +0 -1
- package/dist/services/systemd-manager.js +0 -458
- package/dist/services/systemd-manager.js.map +0 -1
- package/dist/services/traffic-manager.d.ts +0 -106
- package/dist/services/traffic-manager.d.ts.map +0 -1
- package/dist/services/traffic-manager.js +0 -368
- package/dist/services/traffic-manager.js.map +0 -1
- package/dist/services/user-manager.d.ts +0 -90
- package/dist/services/user-manager.d.ts.map +0 -1
- package/dist/services/user-manager.js +0 -347
- package/dist/services/user-manager.js.map +0 -1
- package/dist/services/user-metadata-manager.d.ts +0 -85
- package/dist/services/user-metadata-manager.d.ts.map +0 -1
- package/dist/services/user-metadata-manager.js +0 -181
- package/dist/services/user-metadata-manager.js.map +0 -1
- package/dist/types/config.d.ts +0 -340
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types/config.js +0 -7
- package/dist/types/config.js.map +0 -1
- package/dist/types/layout.d.ts +0 -119
- package/dist/types/layout.d.ts.map +0 -1
- package/dist/types/layout.js +0 -142
- package/dist/types/layout.js.map +0 -1
- package/dist/types/platform.d.ts +0 -72
- package/dist/types/platform.d.ts.map +0 -1
- package/dist/types/platform.js +0 -38
- package/dist/types/platform.js.map +0 -1
- package/dist/types/quota.d.ts +0 -158
- package/dist/types/quota.d.ts.map +0 -1
- package/dist/types/quota.js +0 -26
- package/dist/types/quota.js.map +0 -1
- package/dist/types/review.d.ts +0 -62
- package/dist/types/review.d.ts.map +0 -1
- package/dist/types/review.js +0 -8
- package/dist/types/review.js.map +0 -1
- package/dist/types/server-config.d.ts +0 -53
- package/dist/types/server-config.d.ts.map +0 -1
- package/dist/types/server-config.js +0 -19
- package/dist/types/server-config.js.map +0 -1
- package/dist/types/service.d.ts +0 -96
- package/dist/types/service.d.ts.map +0 -1
- package/dist/types/service.js +0 -7
- package/dist/types/service.js.map +0 -1
- package/dist/types/terminal.d.ts +0 -35
- package/dist/types/terminal.d.ts.map +0 -1
- package/dist/types/terminal.js +0 -20
- package/dist/types/terminal.js.map +0 -1
- package/dist/types/ui-components.d.ts +0 -53
- package/dist/types/ui-components.d.ts.map +0 -1
- package/dist/types/ui-components.js +0 -3
- package/dist/types/ui-components.js.map +0 -1
- package/dist/types/user-metadata.d.ts +0 -43
- package/dist/types/user-metadata.d.ts.map +0 -1
- package/dist/types/user-metadata.js +0 -17
- package/dist/types/user-metadata.js.map +0 -1
- package/dist/types/user.d.ts +0 -134
- package/dist/types/user.d.ts.map +0 -1
- package/dist/types/user.js +0 -7
- package/dist/types/user.js.map +0 -1
- package/dist/utils/clipboard.d.ts +0 -21
- package/dist/utils/clipboard.d.ts.map +0 -1
- package/dist/utils/clipboard.js +0 -45
- package/dist/utils/clipboard.js.map +0 -1
- package/dist/utils/error-formatter.d.ts +0 -60
- package/dist/utils/error-formatter.d.ts.map +0 -1
- package/dist/utils/error-formatter.js +0 -244
- package/dist/utils/error-formatter.js.map +0 -1
- package/dist/utils/errors.d.ts +0 -92
- package/dist/utils/errors.d.ts.map +0 -1
- package/dist/utils/errors.js +0 -143
- package/dist/utils/errors.js.map +0 -1
- package/dist/utils/firewall.d.ts +0 -14
- package/dist/utils/firewall.d.ts.map +0 -1
- package/dist/utils/firewall.js +0 -78
- package/dist/utils/firewall.js.map +0 -1
- package/dist/utils/format.d.ts +0 -93
- package/dist/utils/format.d.ts.map +0 -1
- package/dist/utils/format.js +0 -240
- package/dist/utils/format.js.map +0 -1
- package/dist/utils/icons.d.ts +0 -53
- package/dist/utils/icons.d.ts.map +0 -1
- package/dist/utils/icons.js +0 -143
- package/dist/utils/icons.js.map +0 -1
- package/dist/utils/layout.d.ts +0 -142
- package/dist/utils/layout.d.ts.map +0 -1
- package/dist/utils/layout.js +0 -381
- package/dist/utils/layout.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -160
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -351
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/network.d.ts +0 -39
- package/dist/utils/network.d.ts.map +0 -1
- package/dist/utils/network.js +0 -227
- package/dist/utils/network.js.map +0 -1
- package/dist/utils/os-detection.d.ts +0 -10
- package/dist/utils/os-detection.d.ts.map +0 -1
- package/dist/utils/os-detection.js +0 -86
- package/dist/utils/os-detection.js.map +0 -1
- package/dist/utils/preflight.d.ts +0 -57
- package/dist/utils/preflight.d.ts.map +0 -1
- package/dist/utils/preflight.js +0 -215
- package/dist/utils/preflight.js.map +0 -1
- package/dist/utils/repo-scan.d.ts +0 -54
- package/dist/utils/repo-scan.d.ts.map +0 -1
- package/dist/utils/repo-scan.js +0 -165
- package/dist/utils/repo-scan.js.map +0 -1
- package/dist/utils/report-output.d.ts +0 -13
- package/dist/utils/report-output.d.ts.map +0 -1
- package/dist/utils/report-output.js +0 -33
- package/dist/utils/report-output.js.map +0 -1
- package/dist/utils/review-id.d.ts +0 -8
- package/dist/utils/review-id.d.ts.map +0 -1
- package/dist/utils/review-id.js +0 -17
- package/dist/utils/review-id.js.map +0 -1
- package/dist/utils/splash.d.ts +0 -21
- package/dist/utils/splash.d.ts.map +0 -1
- package/dist/utils/splash.js +0 -179
- package/dist/utils/splash.js.map +0 -1
- package/dist/utils/terminal.d.ts +0 -32
- package/dist/utils/terminal.d.ts.map +0 -1
- package/dist/utils/terminal.js +0 -93
- package/dist/utils/terminal.js.map +0 -1
- package/dist/utils/traffic-formatter.d.ts +0 -45
- package/dist/utils/traffic-formatter.d.ts.map +0 -1
- package/dist/utils/traffic-formatter.js +0 -131
- package/dist/utils/traffic-formatter.js.map +0 -1
- package/dist/utils/validator.d.ts +0 -102
- package/dist/utils/validator.d.ts.map +0 -1
- package/dist/utils/validator.js +0 -238
- package/dist/utils/validator.js.map +0 -1
- package/dist/utils/vless-link.d.ts +0 -27
- package/dist/utils/vless-link.d.ts.map +0 -1
- package/dist/utils/vless-link.js +0 -69
- package/dist/utils/vless-link.js.map +0 -1
- package/dist/utils/which.d.ts +0 -13
- package/dist/utils/which.d.ts.map +0 -1
- package/dist/utils/which.js +0 -28
- package/dist/utils/which.js.map +0 -1
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Progress Bar Component
|
|
3
|
-
*
|
|
4
|
-
* Renders ASCII progress bars for traffic usage display
|
|
5
|
-
*
|
|
6
|
-
* @module components/progress-bar
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Progress bar options
|
|
10
|
-
*/
|
|
11
|
-
export interface ProgressBarOptions {
|
|
12
|
-
/** Total width of the progress bar (default: 20) */
|
|
13
|
-
width?: number;
|
|
14
|
-
/** Character for filled portion (default: '█') */
|
|
15
|
-
filledChar?: string;
|
|
16
|
-
/** Character for empty portion (default: '░') */
|
|
17
|
-
emptyChar?: string;
|
|
18
|
-
/** Show percentage text (default: true) */
|
|
19
|
-
showPercent?: boolean;
|
|
20
|
-
/** Color thresholds for warning/error states */
|
|
21
|
-
thresholds?: {
|
|
22
|
-
warning: number;
|
|
23
|
-
error: number;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Render a progress bar
|
|
28
|
-
*
|
|
29
|
-
* @param percent - Current percentage (0-100+)
|
|
30
|
-
* @param options - Rendering options
|
|
31
|
-
* @returns Formatted progress bar string
|
|
32
|
-
*/
|
|
33
|
-
export declare function renderProgressBar(percent: number, options?: ProgressBarOptions): string;
|
|
34
|
-
/**
|
|
35
|
-
* Render a compact progress bar (for tight spaces)
|
|
36
|
-
*
|
|
37
|
-
* @param percent - Current percentage (0-100+)
|
|
38
|
-
* @param width - Bar width (default: 10)
|
|
39
|
-
* @returns Formatted compact progress bar
|
|
40
|
-
*/
|
|
41
|
-
export declare function renderCompactBar(percent: number, width?: number): string;
|
|
42
|
-
/**
|
|
43
|
-
* Render a usage summary with progress bar
|
|
44
|
-
*
|
|
45
|
-
* @param usedBytes - Used bytes
|
|
46
|
-
* @param totalBytes - Total quota bytes (-1 for unlimited)
|
|
47
|
-
* @param formatFn - Function to format bytes to display string
|
|
48
|
-
* @returns Formatted usage summary with progress bar
|
|
49
|
-
*/
|
|
50
|
-
export declare function renderUsageSummary(usedBytes: number, totalBytes: number, formatFn: (_bytes: number) => string): string;
|
|
51
|
-
/**
|
|
52
|
-
* Render a mini indicator (single character)
|
|
53
|
-
*
|
|
54
|
-
* @param percent - Current percentage
|
|
55
|
-
* @returns Single colored character indicator
|
|
56
|
-
*/
|
|
57
|
-
export declare function renderMiniIndicator(percent: number): string;
|
|
58
|
-
/**
|
|
59
|
-
* Render usage as a fraction with color
|
|
60
|
-
*
|
|
61
|
-
* @param usedBytes - Used bytes
|
|
62
|
-
* @param totalBytes - Total quota bytes
|
|
63
|
-
* @param formatFn - Function to format bytes
|
|
64
|
-
* @returns Colored fraction string
|
|
65
|
-
*/
|
|
66
|
-
export declare function renderUsageFraction(usedBytes: number, totalBytes: number, formatFn: (_bytes: number) => string): string;
|
|
67
|
-
//# sourceMappingURL=progress-bar.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar.d.ts","sourceRoot":"","sources":["../../src/components/progress-bar.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,oDAAoD;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,gDAAgD;IAChD,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAgBD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,MAAM,CA4B3F;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAO5E;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GACnC,MAAM,CAYR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQ3D;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,GACnC,MAAM,CAiBR"}
|
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Progress Bar Component
|
|
4
|
-
*
|
|
5
|
-
* Renders ASCII progress bars for traffic usage display
|
|
6
|
-
*
|
|
7
|
-
* @module components/progress-bar
|
|
8
|
-
*/
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.renderProgressBar = renderProgressBar;
|
|
11
|
-
exports.renderCompactBar = renderCompactBar;
|
|
12
|
-
exports.renderUsageSummary = renderUsageSummary;
|
|
13
|
-
exports.renderMiniIndicator = renderMiniIndicator;
|
|
14
|
-
exports.renderUsageFraction = renderUsageFraction;
|
|
15
|
-
const theme_1 = require("../constants/theme");
|
|
16
|
-
/**
|
|
17
|
-
* Default options
|
|
18
|
-
*/
|
|
19
|
-
const DEFAULT_OPTIONS = {
|
|
20
|
-
width: 20,
|
|
21
|
-
filledChar: '█',
|
|
22
|
-
emptyChar: '░',
|
|
23
|
-
showPercent: true,
|
|
24
|
-
thresholds: {
|
|
25
|
-
warning: 80,
|
|
26
|
-
error: 100,
|
|
27
|
-
},
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Render a progress bar
|
|
31
|
-
*
|
|
32
|
-
* @param percent - Current percentage (0-100+)
|
|
33
|
-
* @param options - Rendering options
|
|
34
|
-
* @returns Formatted progress bar string
|
|
35
|
-
*/
|
|
36
|
-
function renderProgressBar(percent, options = {}) {
|
|
37
|
-
const opts = { ...DEFAULT_OPTIONS, ...options };
|
|
38
|
-
const { width, filledChar, emptyChar, showPercent, thresholds } = opts;
|
|
39
|
-
// Clamp percentage for display (but keep original for color)
|
|
40
|
-
const displayPercent = Math.min(percent, 100);
|
|
41
|
-
const filledWidth = Math.round((displayPercent / 100) * width);
|
|
42
|
-
const emptyWidth = width - filledWidth;
|
|
43
|
-
// Build the bar
|
|
44
|
-
const filled = filledChar.repeat(filledWidth);
|
|
45
|
-
const empty = emptyChar.repeat(emptyWidth);
|
|
46
|
-
// Determine color based on thresholds
|
|
47
|
-
let colorFn;
|
|
48
|
-
if (percent >= thresholds.error) {
|
|
49
|
-
colorFn = theme_1.THEME.error;
|
|
50
|
-
}
|
|
51
|
-
else if (percent >= thresholds.warning) {
|
|
52
|
-
colorFn = theme_1.THEME.warning;
|
|
53
|
-
}
|
|
54
|
-
else {
|
|
55
|
-
colorFn = theme_1.THEME.success;
|
|
56
|
-
}
|
|
57
|
-
// Build result
|
|
58
|
-
const bar = colorFn(filled) + theme_1.THEME.neutral(empty);
|
|
59
|
-
const percentText = showPercent ? ` ${Math.round(percent)}%` : '';
|
|
60
|
-
return `[${bar}]${colorFn(percentText)}`;
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Render a compact progress bar (for tight spaces)
|
|
64
|
-
*
|
|
65
|
-
* @param percent - Current percentage (0-100+)
|
|
66
|
-
* @param width - Bar width (default: 10)
|
|
67
|
-
* @returns Formatted compact progress bar
|
|
68
|
-
*/
|
|
69
|
-
function renderCompactBar(percent, width = 10) {
|
|
70
|
-
return renderProgressBar(percent, {
|
|
71
|
-
width,
|
|
72
|
-
showPercent: false,
|
|
73
|
-
filledChar: '▓',
|
|
74
|
-
emptyChar: '░',
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Render a usage summary with progress bar
|
|
79
|
-
*
|
|
80
|
-
* @param usedBytes - Used bytes
|
|
81
|
-
* @param totalBytes - Total quota bytes (-1 for unlimited)
|
|
82
|
-
* @param formatFn - Function to format bytes to display string
|
|
83
|
-
* @returns Formatted usage summary with progress bar
|
|
84
|
-
*/
|
|
85
|
-
function renderUsageSummary(usedBytes, totalBytes, formatFn) {
|
|
86
|
-
if (totalBytes < 0) {
|
|
87
|
-
// Unlimited quota
|
|
88
|
-
return `${formatFn(usedBytes)} / ${theme_1.THEME.neutral('无限制')}`;
|
|
89
|
-
}
|
|
90
|
-
const percent = (usedBytes / totalBytes) * 100;
|
|
91
|
-
const bar = renderProgressBar(percent, { width: 15 });
|
|
92
|
-
const usedStr = formatFn(usedBytes);
|
|
93
|
-
const totalStr = formatFn(totalBytes);
|
|
94
|
-
return `${bar} ${usedStr} / ${totalStr}`;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Render a mini indicator (single character)
|
|
98
|
-
*
|
|
99
|
-
* @param percent - Current percentage
|
|
100
|
-
* @returns Single colored character indicator
|
|
101
|
-
*/
|
|
102
|
-
function renderMiniIndicator(percent) {
|
|
103
|
-
if (percent >= 100) {
|
|
104
|
-
return theme_1.THEME.error('●');
|
|
105
|
-
}
|
|
106
|
-
else if (percent >= 80) {
|
|
107
|
-
return theme_1.THEME.warning('●');
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
return theme_1.THEME.success('●');
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Render usage as a fraction with color
|
|
115
|
-
*
|
|
116
|
-
* @param usedBytes - Used bytes
|
|
117
|
-
* @param totalBytes - Total quota bytes
|
|
118
|
-
* @param formatFn - Function to format bytes
|
|
119
|
-
* @returns Colored fraction string
|
|
120
|
-
*/
|
|
121
|
-
function renderUsageFraction(usedBytes, totalBytes, formatFn) {
|
|
122
|
-
if (totalBytes < 0) {
|
|
123
|
-
return `${formatFn(usedBytes)} / ${theme_1.THEME.neutral('∞')}`;
|
|
124
|
-
}
|
|
125
|
-
const percent = (usedBytes / totalBytes) * 100;
|
|
126
|
-
let colorFn;
|
|
127
|
-
if (percent >= 100) {
|
|
128
|
-
colorFn = theme_1.THEME.error;
|
|
129
|
-
}
|
|
130
|
-
else if (percent >= 80) {
|
|
131
|
-
colorFn = theme_1.THEME.warning;
|
|
132
|
-
}
|
|
133
|
-
else {
|
|
134
|
-
colorFn = theme_1.THEME.success;
|
|
135
|
-
}
|
|
136
|
-
return `${colorFn(formatFn(usedBytes))} / ${theme_1.THEME.neutral(formatFn(totalBytes))}`;
|
|
137
|
-
}
|
|
138
|
-
//# sourceMappingURL=progress-bar.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"progress-bar.js","sourceRoot":"","sources":["../../src/components/progress-bar.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { UserConfig } from '../types/user';
|
|
2
|
-
/**
|
|
3
|
-
* Renders a list of users as a formatted table
|
|
4
|
-
* @param users - List of user configurations
|
|
5
|
-
* @param width - Available terminal width
|
|
6
|
-
*/
|
|
7
|
-
export declare function renderUserTable(users: UserConfig[], width: number): string;
|
|
8
|
-
//# sourceMappingURL=user-table.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user-table.d.ts","sourceRoot":"","sources":["../../src/components/user-table.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAqF1E"}
|
|
@@ -1,91 +0,0 @@
|
|
|
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.renderUserTable = renderUserTable;
|
|
7
|
-
const cli_table3_1 = __importDefault(require("cli-table3"));
|
|
8
|
-
const theme_1 = require("../constants/theme");
|
|
9
|
-
/**
|
|
10
|
-
* Renders a list of users as a formatted table
|
|
11
|
-
* @param users - List of user configurations
|
|
12
|
-
* @param width - Available terminal width
|
|
13
|
-
*/
|
|
14
|
-
function renderUserTable(users, width) {
|
|
15
|
-
// Determine if we can show extra columns
|
|
16
|
-
const isWide = width >= 100;
|
|
17
|
-
const head = isWide
|
|
18
|
-
? ['Username', 'UUID Prefix', 'Port', 'Protocol', 'Status']
|
|
19
|
-
: ['Username', 'UUID Prefix', 'Status'];
|
|
20
|
-
// Calculate adaptive column widths
|
|
21
|
-
// Standard: [20%, 30%, 20%] approx
|
|
22
|
-
// Wide: [15%, 25%, 10%, 10%, 15%] approx
|
|
23
|
-
const colWidths = isWide
|
|
24
|
-
? [
|
|
25
|
-
Math.floor(width * 0.15),
|
|
26
|
-
Math.floor(width * 0.25),
|
|
27
|
-
Math.floor(width * 0.1),
|
|
28
|
-
Math.floor(width * 0.1),
|
|
29
|
-
Math.floor(width * 0.15),
|
|
30
|
-
]
|
|
31
|
-
: [Math.floor(width * 0.25), Math.floor(width * 0.4), Math.floor(width * 0.25)];
|
|
32
|
-
const table = new cli_table3_1.default({
|
|
33
|
-
head: head.map((h) => theme_1.THEME.primary(h)), // Use theme color for headers
|
|
34
|
-
colWidths,
|
|
35
|
-
style: {
|
|
36
|
-
head: [],
|
|
37
|
-
border: ['gray'], // Apply neutral color to borders
|
|
38
|
-
},
|
|
39
|
-
// Use theme border style
|
|
40
|
-
chars: theme_1.UI_CONSTANTS.BORDER_STYLE === 'single'
|
|
41
|
-
? {
|
|
42
|
-
top: '─',
|
|
43
|
-
'top-mid': '┬',
|
|
44
|
-
'top-left': '┌',
|
|
45
|
-
'top-right': '┐',
|
|
46
|
-
bottom: '─',
|
|
47
|
-
'bottom-mid': '┴',
|
|
48
|
-
'bottom-left': '└',
|
|
49
|
-
'bottom-right': '┘',
|
|
50
|
-
left: '│',
|
|
51
|
-
'left-mid': '├',
|
|
52
|
-
mid: '─',
|
|
53
|
-
'mid-mid': '┼',
|
|
54
|
-
right: '│',
|
|
55
|
-
'right-mid': '┤',
|
|
56
|
-
middle: '│',
|
|
57
|
-
}
|
|
58
|
-
: undefined,
|
|
59
|
-
});
|
|
60
|
-
// Limit rows and show summary if too many
|
|
61
|
-
const MAX_ROWS = 10;
|
|
62
|
-
const showSummary = users.length > MAX_ROWS;
|
|
63
|
-
const displayUsers = showSummary ? users.slice(0, MAX_ROWS) : users;
|
|
64
|
-
displayUsers.forEach((user) => {
|
|
65
|
-
const uuidPrefix = user.uuid ? `${user.uuid.substring(0, 8)}...` : 'N/A';
|
|
66
|
-
// Use theme indicator
|
|
67
|
-
const status = theme_1.THEME.success(`${theme_1.UI_CONSTANTS.INDICATOR.ACTIVE} Active`);
|
|
68
|
-
if (isWide) {
|
|
69
|
-
table.push([
|
|
70
|
-
user.username,
|
|
71
|
-
uuidPrefix,
|
|
72
|
-
String(user.port || 'N/A'),
|
|
73
|
-
user.protocol || 'vless',
|
|
74
|
-
status,
|
|
75
|
-
]);
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
table.push([user.username, uuidPrefix, status]);
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
if (showSummary) {
|
|
82
|
-
const remaining = users.length - MAX_ROWS;
|
|
83
|
-
const summaryText = `... and ${remaining} more users`;
|
|
84
|
-
// Create a row that spans all columns
|
|
85
|
-
const summaryRow = new Array(head.length).fill('');
|
|
86
|
-
summaryRow[0] = theme_1.THEME.neutral(summaryText);
|
|
87
|
-
table.push(summaryRow);
|
|
88
|
-
}
|
|
89
|
-
return table.toString();
|
|
90
|
-
}
|
|
91
|
-
//# sourceMappingURL=user-table.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"user-table.js","sourceRoot":"","sources":["../../src/components/user-table.ts"],"names":[],"mappings":"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"}
|
package/dist/config/i18n.d.ts
DELETED
|
@@ -1,136 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Internationalization (i18n) Configuration
|
|
3
|
-
*
|
|
4
|
-
* Provides language support for Chinese and English
|
|
5
|
-
*
|
|
6
|
-
* @module config/i18n
|
|
7
|
-
*/
|
|
8
|
-
/** Supported languages */
|
|
9
|
-
export type Language = 'zh' | 'en';
|
|
10
|
-
/** Translation interface */
|
|
11
|
-
export interface Translations {
|
|
12
|
-
menu: {
|
|
13
|
-
viewStatus: string;
|
|
14
|
-
startService: string;
|
|
15
|
-
stopService: string;
|
|
16
|
-
restartService: string;
|
|
17
|
-
userManagement: string;
|
|
18
|
-
quotaManagement: string;
|
|
19
|
-
configManagement: string;
|
|
20
|
-
viewLogs: string;
|
|
21
|
-
switchLanguage: string;
|
|
22
|
-
exit: string;
|
|
23
|
-
};
|
|
24
|
-
status: {
|
|
25
|
-
serviceStatus: string;
|
|
26
|
-
userCount: string;
|
|
27
|
-
active: string;
|
|
28
|
-
inactive: string;
|
|
29
|
-
unknown: string;
|
|
30
|
-
};
|
|
31
|
-
quota: {
|
|
32
|
-
title: string;
|
|
33
|
-
list: string;
|
|
34
|
-
set: string;
|
|
35
|
-
show: string;
|
|
36
|
-
reset: string;
|
|
37
|
-
reenable: string;
|
|
38
|
-
unlimited: string;
|
|
39
|
-
used: string;
|
|
40
|
-
remaining: string;
|
|
41
|
-
exceeded: string;
|
|
42
|
-
warning: string;
|
|
43
|
-
normal: string;
|
|
44
|
-
noQuota: string;
|
|
45
|
-
selectUser: string;
|
|
46
|
-
selectPreset: string;
|
|
47
|
-
enterCustom: string;
|
|
48
|
-
confirmReset: string;
|
|
49
|
-
confirmReenable: string;
|
|
50
|
-
executeCheck: string;
|
|
51
|
-
checkComplete: string;
|
|
52
|
-
normalUsers: string;
|
|
53
|
-
warningUsers: string;
|
|
54
|
-
exceededUsers: string;
|
|
55
|
-
disabledUsers: string;
|
|
56
|
-
};
|
|
57
|
-
logs: {
|
|
58
|
-
title: string;
|
|
59
|
-
accessLog: string;
|
|
60
|
-
errorLog: string;
|
|
61
|
-
noLogs: string;
|
|
62
|
-
logFileNotFound: string;
|
|
63
|
-
logFileEmpty: string;
|
|
64
|
-
showingLines: string;
|
|
65
|
-
};
|
|
66
|
-
config: {
|
|
67
|
-
title: string;
|
|
68
|
-
viewConfig: string;
|
|
69
|
-
backupConfig: string;
|
|
70
|
-
restoreConfig: string;
|
|
71
|
-
backupSuccess: string;
|
|
72
|
-
restoreSuccess: string;
|
|
73
|
-
noBackups: string;
|
|
74
|
-
selectBackup: string;
|
|
75
|
-
confirmRestore: string;
|
|
76
|
-
restoreWarning: string;
|
|
77
|
-
};
|
|
78
|
-
publicIp: {
|
|
79
|
-
detecting: string;
|
|
80
|
-
detected: string;
|
|
81
|
-
detectionFailed: string;
|
|
82
|
-
enterManually: string;
|
|
83
|
-
invalidIp: string;
|
|
84
|
-
saved: string;
|
|
85
|
-
natDetected: string;
|
|
86
|
-
};
|
|
87
|
-
actions: {
|
|
88
|
-
selectAction: string;
|
|
89
|
-
confirm: string;
|
|
90
|
-
cancel: string;
|
|
91
|
-
back: string;
|
|
92
|
-
};
|
|
93
|
-
messages: {
|
|
94
|
-
languageSwitched: string;
|
|
95
|
-
operationSuccess: string;
|
|
96
|
-
operationFailed: string;
|
|
97
|
-
thankYou: string;
|
|
98
|
-
terminalTooNarrow: string;
|
|
99
|
-
terminalTooShort: string;
|
|
100
|
-
terminalResizeSuggestion: string;
|
|
101
|
-
quotaSet: string;
|
|
102
|
-
quotaReset: string;
|
|
103
|
-
userReenabled: string;
|
|
104
|
-
noUsersWithQuota: string;
|
|
105
|
-
noDisabledUsers: string;
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Load language preference from file
|
|
110
|
-
*/
|
|
111
|
-
export declare function loadLanguagePreference(): Language;
|
|
112
|
-
/**
|
|
113
|
-
* Save language preference to file
|
|
114
|
-
*/
|
|
115
|
-
export declare function saveLanguagePreference(lang: Language): void;
|
|
116
|
-
/**
|
|
117
|
-
* Get current language
|
|
118
|
-
*/
|
|
119
|
-
export declare function getCurrentLanguage(): Language;
|
|
120
|
-
/**
|
|
121
|
-
* Set current language
|
|
122
|
-
*/
|
|
123
|
-
export declare function setLanguage(lang: Language): void;
|
|
124
|
-
/**
|
|
125
|
-
* Toggle language (switch between zh and en)
|
|
126
|
-
*/
|
|
127
|
-
export declare function toggleLanguage(): Language;
|
|
128
|
-
/**
|
|
129
|
-
* Get translations for current language
|
|
130
|
-
*/
|
|
131
|
-
export declare function t(): Translations;
|
|
132
|
-
/**
|
|
133
|
-
* Get translation for specific language
|
|
134
|
-
*/
|
|
135
|
-
export declare function getTranslations(lang: Language): Translations;
|
|
136
|
-
//# sourceMappingURL=i18n.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../../src/config/i18n.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,0BAA0B;AAC1B,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,IAAI,CAAC;AAKnC,4BAA4B;AAC5B,MAAM,WAAW,YAAY;IAE3B,IAAI,EAAE;QACJ,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,MAAM,CAAC;QACxB,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,EAAE,MAAM,CAAC;QACjB,cAAc,EAAE,MAAM,CAAC;QACvB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IAGF,MAAM,EAAE;QACN,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;IAGF,KAAK,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IAGF,IAAI,EAAE;QACJ,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;QACrB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IAGF,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;QACtB,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,YAAY,EAAE,MAAM,CAAC;QACrB,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IAGF,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAGF,OAAO,EAAE;QACP,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IAGF,QAAQ,EAAE;QACR,gBAAgB,EAAE,MAAM,CAAC;QACzB,gBAAgB,EAAE,MAAM,CAAC;QACzB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;QACjB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,wBAAwB,EAAE,MAAM,CAAC;QACjC,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAiND;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,QAAQ,CAajD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAO3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,QAAQ,CAE7C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI,CAGhD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,QAAQ,CAIzC;AAED;;GAEG;AACH,wBAAgB,CAAC,IAAI,YAAY,CAEhC;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAE5D"}
|