faf-cli 2.3.5 → 2.4.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 +13 -2
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +128 -5
- package/dist/cli.js.map +1 -1
- package/dist/commands/about.d.ts +10 -0
- package/dist/commands/about.d.ts.map +1 -0
- package/dist/commands/about.js +249 -0
- package/dist/commands/about.js.map +1 -0
- package/dist/commands/art.d.ts +10 -0
- package/dist/commands/art.d.ts.map +1 -0
- package/dist/commands/art.js +129 -0
- package/dist/commands/art.js.map +1 -0
- package/dist/commands/license-config.d.ts +10 -0
- package/dist/commands/license-config.d.ts.map +1 -0
- package/dist/commands/license-config.js +140 -0
- package/dist/commands/license-config.js.map +1 -0
- package/dist/commands/license.d.ts +7 -0
- package/dist/commands/license.d.ts.map +1 -0
- package/dist/commands/license.js +60 -0
- package/dist/commands/license.js.map +1 -0
- package/dist/commands/score-v3.d.ts.map +1 -1
- package/dist/commands/score-v3.js +14 -7
- package/dist/commands/score-v3.js.map +1 -1
- package/dist/commands/score.d.ts.map +1 -1
- package/dist/commands/score.js +30 -10
- package/dist/commands/score.js.map +1 -1
- package/dist/commands/submit-art.d.ts +25 -0
- package/dist/commands/submit-art.d.ts.map +1 -0
- package/dist/commands/submit-art.js +348 -0
- package/dist/commands/submit-art.js.map +1 -0
- package/dist/engine/engine-loader.d.ts +24 -0
- package/dist/engine/engine-loader.d.ts.map +1 -0
- package/dist/engine/engine-loader.js +156 -0
- package/dist/engine/engine-loader.js.map +1 -0
- package/dist/engine-bridge.d.ts +5 -5
- package/dist/engine-bridge.d.ts.map +1 -1
- package/dist/engine-bridge.js +20 -7
- package/dist/engine-bridge.js.map +1 -1
- package/dist/engine-mk2/mk2-core.d.ts +38 -0
- package/dist/engine-mk2/mk2-core.d.ts.map +1 -0
- package/dist/engine-mk2/mk2-core.js +217 -0
- package/dist/engine-mk2/mk2-core.js.map +1 -0
- package/dist/license/license-config.d.ts +59 -0
- package/dist/license/license-config.d.ts.map +1 -0
- package/dist/license/license-config.js +263 -0
- package/dist/license/license-config.js.map +1 -0
- package/dist/license/license-controller.d.ts +41 -0
- package/dist/license/license-controller.d.ts.map +1 -0
- package/dist/license/license-controller.js +243 -0
- package/dist/license/license-controller.js.map +1 -0
- package/dist/utils/art-gallery.d.ts +58 -0
- package/dist/utils/art-gallery.d.ts.map +1 -0
- package/dist/utils/art-gallery.js +275 -0
- package/dist/utils/art-gallery.js.map +1 -0
- package/dist/utils/championship-style.d.ts +1 -1
- package/dist/utils/championship-style.d.ts.map +1 -1
- package/dist/utils/championship-style.js +17 -13
- package/dist/utils/championship-style.js.map +1 -1
- package/dist/utils/score-header.d.ts +22 -0
- package/dist/utils/score-header.d.ts.map +1 -0
- package/dist/utils/score-header.js +85 -0
- package/dist/utils/score-header.js.map +1 -0
- package/dist/utils/score-indicators.d.ts +47 -0
- package/dist/utils/score-indicators.d.ts.map +1 -0
- package/dist/utils/score-indicators.js +197 -0
- package/dist/utils/score-indicators.js.map +1 -0
- package/package.json +8 -3
|
@@ -141,22 +141,26 @@ ${exports.FAF_COLORS.fafCyan('│')} ${e
|
|
|
141
141
|
${exports.FAF_COLORS.fafCyan('└─────────────────────────────────────────┘')}`;
|
|
142
142
|
}
|
|
143
143
|
/**
|
|
144
|
-
* Generate static championship header (
|
|
144
|
+
* Generate static championship header (classic 3D design)
|
|
145
145
|
*/
|
|
146
146
|
function generateFAFHeader() {
|
|
147
147
|
const version = require('../../package.json').version;
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
${exports.FAF_COLORS.fafCyan('
|
|
152
|
-
${exports.FAF_COLORS.fafCyan('
|
|
153
|
-
${exports.FAF_COLORS.fafCyan('
|
|
154
|
-
${exports.FAF_COLORS.
|
|
155
|
-
${exports.FAF_COLORS.
|
|
156
|
-
${exports.FAF_COLORS.
|
|
157
|
-
${exports.FAF_COLORS.
|
|
158
|
-
|
|
159
|
-
|
|
148
|
+
// Classic 3D FAF design with proper depth effect
|
|
149
|
+
return `╔══════════════════════════════════════════════════════════════╗
|
|
150
|
+
║ ║
|
|
151
|
+
║ ${exports.FAF_COLORS.fafCyan('███████╗')} ${exports.FAF_COLORS.fafCyan('███████╗')} ${exports.FAF_COLORS.fafCyan('███████╗')} 🏎️ 🏁 v${version}
|
|
152
|
+
║ ${exports.FAF_COLORS.fafCyan('██╔════╝')} ${exports.FAF_COLORS.fafCyan('██╔══██╗')} ${exports.FAF_COLORS.fafCyan('██╔════╝')}
|
|
153
|
+
║ ${exports.FAF_COLORS.fafCyan('█████╗ ')} ${exports.FAF_COLORS.fafCyan('███████║')} ${exports.FAF_COLORS.fafCyan('█████╗ ')}
|
|
154
|
+
║ ${exports.FAF_COLORS.fafWhite('██╔══╝ ')} ${exports.FAF_COLORS.fafWhite('██╔══██║')} ${exports.FAF_COLORS.fafWhite('██╔══╝ ')}
|
|
155
|
+
║ ${exports.FAF_COLORS.fafWhite('██║ ')} ${exports.FAF_COLORS.fafWhite('██║ ██║')} ${exports.FAF_COLORS.fafWhite('██║ ')}
|
|
156
|
+
║ ${exports.FAF_COLORS.fafOrange('██║ ')} ${exports.FAF_COLORS.fafOrange('██║ ██║')} ${exports.FAF_COLORS.fafOrange('██║ ')}
|
|
157
|
+
║ ${exports.FAF_COLORS.fafOrange('╚═╝ ')} ${exports.FAF_COLORS.fafOrange('╚═╝ ╚═╝')} ${exports.FAF_COLORS.fafOrange('╚═╝ ')}
|
|
158
|
+
║ ║
|
|
159
|
+
║ 🤖 Make Your AI Happy! 🧡 Trust Driven ║
|
|
160
|
+
║ ───────────────────────────────────────────────── ║
|
|
161
|
+
║ 🌐 Universal, AI-Context ⚡ FAST AF 💙 ║
|
|
162
|
+
║ ║
|
|
163
|
+
╚══════════════════════════════════════════════════════════════╝`;
|
|
160
164
|
}
|
|
161
165
|
// 🏁 Default ASCII Art Header (for backwards compatibility)
|
|
162
166
|
exports.FAF_HEADER = generateFAFHeader();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"championship-style.js","sourceRoot":"","sources":["../../src/utils/championship-style.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAyIH,gDAUC;AAKD,
|
|
1
|
+
{"version":3,"file":"championship-style.js","sourceRoot":"","sources":["../../src/utils/championship-style.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🏆 Score Header Display - Always visible at top
|
|
3
|
+
* Shows current score + birth score in a clean box
|
|
4
|
+
*/
|
|
5
|
+
export interface ScoreData {
|
|
6
|
+
currentScore: number;
|
|
7
|
+
birthScore?: number;
|
|
8
|
+
aiPredictive?: number;
|
|
9
|
+
dna?: {
|
|
10
|
+
birthWeight?: number;
|
|
11
|
+
currentWeight?: number;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Generate the score header box (always shown unless --quiet)
|
|
16
|
+
*/
|
|
17
|
+
export declare function generateScoreHeader(data: ScoreData): string;
|
|
18
|
+
/**
|
|
19
|
+
* Minimal score line (for when art is disabled)
|
|
20
|
+
*/
|
|
21
|
+
export declare function generateScoreLine(data: ScoreData): string;
|
|
22
|
+
//# sourceMappingURL=score-header.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-header.d.ts","sourceRoot":"","sources":["../../src/utils/score-header.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,WAAW,SAAS;IACxB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE;QACJ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CA8C3D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,CAsBzD"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 🏆 Score Header Display - Always visible at top
|
|
4
|
+
* Shows current score + birth score in a clean box
|
|
5
|
+
*/
|
|
6
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
7
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
|
+
};
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
exports.generateScoreHeader = generateScoreHeader;
|
|
11
|
+
exports.generateScoreLine = generateScoreLine;
|
|
12
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
13
|
+
const championship_style_1 = require("./championship-style");
|
|
14
|
+
/**
|
|
15
|
+
* Generate the score header box (always shown unless --quiet)
|
|
16
|
+
*/
|
|
17
|
+
function generateScoreHeader(data) {
|
|
18
|
+
const { currentScore, birthScore, aiPredictive, dna } = data;
|
|
19
|
+
// Determine score color based on percentage
|
|
20
|
+
const getScoreColor = (score) => {
|
|
21
|
+
if (score >= 99)
|
|
22
|
+
return championship_style_1.FAF_COLORS.fafOrange; // Big Orange territory!
|
|
23
|
+
if (score >= 85)
|
|
24
|
+
return championship_style_1.FAF_COLORS.fafGreen;
|
|
25
|
+
if (score >= 70)
|
|
26
|
+
return championship_style_1.FAF_COLORS.fafCyan;
|
|
27
|
+
return championship_style_1.FAF_COLORS.fafWhite;
|
|
28
|
+
};
|
|
29
|
+
const scoreColor = getScoreColor(currentScore);
|
|
30
|
+
// Build the score display
|
|
31
|
+
let scoreDisplay = `${scoreColor(currentScore + '%')}`;
|
|
32
|
+
// Add birth score if available
|
|
33
|
+
if (birthScore !== undefined && birthScore !== currentScore) {
|
|
34
|
+
const improvement = currentScore - birthScore;
|
|
35
|
+
if (improvement > 0) {
|
|
36
|
+
scoreDisplay += chalk_1.default.gray(` (↑${improvement}% from birth: ${birthScore}%)`);
|
|
37
|
+
}
|
|
38
|
+
else if (improvement < 0) {
|
|
39
|
+
scoreDisplay += chalk_1.default.gray(` (↓${Math.abs(improvement)}% from birth: ${birthScore}%)`);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
// Add DNA weight info if available
|
|
43
|
+
let dnaDisplay = '';
|
|
44
|
+
if (dna?.currentWeight) {
|
|
45
|
+
dnaDisplay = chalk_1.default.gray(` | Weight: ${dna.currentWeight.toFixed(1)}KB`);
|
|
46
|
+
if (dna.birthWeight && dna.birthWeight !== dna.currentWeight) {
|
|
47
|
+
const growth = ((dna.currentWeight - dna.birthWeight) / dna.birthWeight * 100).toFixed(0);
|
|
48
|
+
dnaDisplay += chalk_1.default.gray(` (+${growth}%)`);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
// AI Predictive (only show if higher than current)
|
|
52
|
+
let aiDisplay = '';
|
|
53
|
+
if (aiPredictive && aiPredictive > currentScore) {
|
|
54
|
+
aiDisplay = chalk_1.default.gray(` > AI-Predictive: ${championship_style_1.FAF_COLORS.fafCyan(aiPredictive + '%')}`);
|
|
55
|
+
}
|
|
56
|
+
// Create the box
|
|
57
|
+
return `╔════════════════════════════════════════════════════════════╗
|
|
58
|
+
║ 🏆 FAF Score: ${scoreDisplay}${dnaDisplay}
|
|
59
|
+
${aiDisplay ? `║ ${aiDisplay}\n` : ''}╚════════════════════════════════════════════════════════════╝`;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Minimal score line (for when art is disabled)
|
|
63
|
+
*/
|
|
64
|
+
function generateScoreLine(data) {
|
|
65
|
+
const { currentScore, birthScore } = data;
|
|
66
|
+
const getScoreColor = (score) => {
|
|
67
|
+
if (score >= 99)
|
|
68
|
+
return championship_style_1.FAF_COLORS.fafOrange;
|
|
69
|
+
if (score >= 85)
|
|
70
|
+
return championship_style_1.FAF_COLORS.fafGreen;
|
|
71
|
+
if (score >= 70)
|
|
72
|
+
return championship_style_1.FAF_COLORS.fafCyan;
|
|
73
|
+
return championship_style_1.FAF_COLORS.fafWhite;
|
|
74
|
+
};
|
|
75
|
+
const scoreColor = getScoreColor(currentScore);
|
|
76
|
+
let line = `🏆 Score: ${scoreColor(currentScore + '%')}`;
|
|
77
|
+
if (birthScore !== undefined && birthScore !== currentScore) {
|
|
78
|
+
const improvement = currentScore - birthScore;
|
|
79
|
+
if (improvement > 0) {
|
|
80
|
+
line += chalk_1.default.gray(` (Birth: ${birthScore}% ↑${improvement}%)`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return line;
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=score-header.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-header.js","sourceRoot":"","sources":["../../src/utils/score-header.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🎯 FAF Score Indicators - Flag-based visual achievement system
|
|
3
|
+
* Different flags = Different achievement levels
|
|
4
|
+
* NO VERTICAL LINES = NO MISALIGNMENT
|
|
5
|
+
*/
|
|
6
|
+
export interface ScoreIndicator {
|
|
7
|
+
min: number;
|
|
8
|
+
max: number;
|
|
9
|
+
leftFlag: string;
|
|
10
|
+
rightFlag: string;
|
|
11
|
+
color: (text: string) => string;
|
|
12
|
+
title: string;
|
|
13
|
+
description: string;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Achievement level indicators using flags
|
|
17
|
+
*/
|
|
18
|
+
export declare const SCORE_INDICATORS: ScoreIndicator[];
|
|
19
|
+
/**
|
|
20
|
+
* Get indicator for a specific score
|
|
21
|
+
*/
|
|
22
|
+
export declare function getScoreIndicator(score: number): ScoreIndicator;
|
|
23
|
+
/**
|
|
24
|
+
* Format score with appropriate flags (open-ended design)
|
|
25
|
+
*/
|
|
26
|
+
export declare function formatScoreHeader(score: number, title?: string): string;
|
|
27
|
+
/**
|
|
28
|
+
* Create a minimal score badge
|
|
29
|
+
*/
|
|
30
|
+
export declare function formatScoreBadge(score: number): string;
|
|
31
|
+
/**
|
|
32
|
+
* Format score card with birth score tracking
|
|
33
|
+
*/
|
|
34
|
+
export declare function formatScoreCard(currentScore: number, birthScore: number, improvements?: string[]): string;
|
|
35
|
+
/**
|
|
36
|
+
* Racing theme score card
|
|
37
|
+
*/
|
|
38
|
+
export declare function formatRacingScoreCard(score: number, sectors?: {
|
|
39
|
+
s1?: number;
|
|
40
|
+
s2?: number;
|
|
41
|
+
s3?: number;
|
|
42
|
+
}): string;
|
|
43
|
+
/**
|
|
44
|
+
* List all available indicators
|
|
45
|
+
*/
|
|
46
|
+
export declare function listScoreIndicators(): string;
|
|
47
|
+
//# sourceMappingURL=score-indicators.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-indicators.d.ts","sourceRoot":"","sources":["../../src/utils/score-indicators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,cAAc,EAgE5C,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAE/D;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAsB3E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,GAAE,MAAM,EAAO,GAAG,MAAM,CAkC7G;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,CAAA;CAAM,GAAG,MAAM,CAiClH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAc5C"}
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 🎯 FAF Score Indicators - Flag-based visual achievement system
|
|
4
|
+
* Different flags = Different achievement levels
|
|
5
|
+
* NO VERTICAL LINES = NO MISALIGNMENT
|
|
6
|
+
*/
|
|
7
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
8
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
9
|
+
};
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.SCORE_INDICATORS = void 0;
|
|
12
|
+
exports.getScoreIndicator = getScoreIndicator;
|
|
13
|
+
exports.formatScoreHeader = formatScoreHeader;
|
|
14
|
+
exports.formatScoreBadge = formatScoreBadge;
|
|
15
|
+
exports.formatScoreCard = formatScoreCard;
|
|
16
|
+
exports.formatRacingScoreCard = formatRacingScoreCard;
|
|
17
|
+
exports.listScoreIndicators = listScoreIndicators;
|
|
18
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
19
|
+
const championship_style_1 = require("./championship-style");
|
|
20
|
+
/**
|
|
21
|
+
* Achievement level indicators using flags
|
|
22
|
+
*/
|
|
23
|
+
exports.SCORE_INDICATORS = [
|
|
24
|
+
{
|
|
25
|
+
min: 105,
|
|
26
|
+
max: 999,
|
|
27
|
+
leftFlag: '🍊',
|
|
28
|
+
rightFlag: '🍊',
|
|
29
|
+
color: championship_style_1.FAF_COLORS.fafOrange,
|
|
30
|
+
title: 'BIG ORANGE',
|
|
31
|
+
description: 'Maximum overdrive! Beyond perfection!'
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
min: 99,
|
|
35
|
+
max: 104,
|
|
36
|
+
leftFlag: '🏁',
|
|
37
|
+
rightFlag: '🏁',
|
|
38
|
+
color: championship_style_1.FAF_COLORS.fafGreen,
|
|
39
|
+
title: 'CHAMPIONSHIP',
|
|
40
|
+
description: 'Pole position achieved!'
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
min: 90,
|
|
44
|
+
max: 98,
|
|
45
|
+
leftFlag: '🏎️',
|
|
46
|
+
rightFlag: '🏎️',
|
|
47
|
+
color: championship_style_1.FAF_COLORS.fafCyan,
|
|
48
|
+
title: 'RACING MODE',
|
|
49
|
+
description: 'High performance activated!'
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
min: 85,
|
|
53
|
+
max: 89,
|
|
54
|
+
leftFlag: '✨',
|
|
55
|
+
rightFlag: '✨',
|
|
56
|
+
color: championship_style_1.FAF_COLORS.fafWhite,
|
|
57
|
+
title: 'TRUST ACHIEVED',
|
|
58
|
+
description: 'AI is genuinely happy!'
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
min: 70,
|
|
62
|
+
max: 84,
|
|
63
|
+
leftFlag: '☑️',
|
|
64
|
+
rightFlag: '☑️',
|
|
65
|
+
color: chalk_1.default.cyan,
|
|
66
|
+
title: 'GOOD PROGRESS',
|
|
67
|
+
description: 'On the right track!'
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
min: 50,
|
|
71
|
+
max: 69,
|
|
72
|
+
leftFlag: '📈',
|
|
73
|
+
rightFlag: '📈',
|
|
74
|
+
color: chalk_1.default.yellow,
|
|
75
|
+
title: 'BUILDING',
|
|
76
|
+
description: 'Keep pushing forward!'
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
min: 0,
|
|
80
|
+
max: 49,
|
|
81
|
+
leftFlag: '🚀',
|
|
82
|
+
rightFlag: '🚀',
|
|
83
|
+
color: chalk_1.default.gray,
|
|
84
|
+
title: 'STARTING',
|
|
85
|
+
description: 'Ready for launch!'
|
|
86
|
+
}
|
|
87
|
+
];
|
|
88
|
+
/**
|
|
89
|
+
* Get indicator for a specific score
|
|
90
|
+
*/
|
|
91
|
+
function getScoreIndicator(score) {
|
|
92
|
+
return exports.SCORE_INDICATORS.find(i => score >= i.min && score <= i.max) || exports.SCORE_INDICATORS[exports.SCORE_INDICATORS.length - 1];
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Format score with appropriate flags (open-ended design)
|
|
96
|
+
*/
|
|
97
|
+
function formatScoreHeader(score, title = '') {
|
|
98
|
+
const indicator = getScoreIndicator(score);
|
|
99
|
+
const scoreText = `${score}%`;
|
|
100
|
+
// Open-ended design - no vertical lines!
|
|
101
|
+
const lines = [];
|
|
102
|
+
// Top line
|
|
103
|
+
lines.push(indicator.color(`${indicator.leftFlag}${'═'.repeat(60)}${indicator.rightFlag}`));
|
|
104
|
+
// Score line
|
|
105
|
+
const scoreLine = ` ${indicator.title} ${scoreText} ${title}`.padEnd(58);
|
|
106
|
+
lines.push(indicator.color(` ${scoreLine} `));
|
|
107
|
+
// Description line
|
|
108
|
+
const descLine = ` ${indicator.description}`.padEnd(58);
|
|
109
|
+
lines.push(chalk_1.default.gray(` ${descLine} `));
|
|
110
|
+
// Bottom line
|
|
111
|
+
lines.push(indicator.color(`${indicator.leftFlag}${'═'.repeat(60)}${indicator.rightFlag}`));
|
|
112
|
+
return lines.join('\n');
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Create a minimal score badge
|
|
116
|
+
*/
|
|
117
|
+
function formatScoreBadge(score) {
|
|
118
|
+
const indicator = getScoreIndicator(score);
|
|
119
|
+
return indicator.color(`${indicator.leftFlag} ${score}% ${indicator.rightFlag}`);
|
|
120
|
+
}
|
|
121
|
+
/**
|
|
122
|
+
* Format score card with birth score tracking
|
|
123
|
+
*/
|
|
124
|
+
function formatScoreCard(currentScore, birthScore, improvements = []) {
|
|
125
|
+
const indicator = getScoreIndicator(currentScore);
|
|
126
|
+
const growth = currentScore - birthScore;
|
|
127
|
+
const growthSymbol = growth > 0 ? '↑' : growth < 0 ? '↓' : '=';
|
|
128
|
+
const lines = [];
|
|
129
|
+
// Header with flags
|
|
130
|
+
lines.push(indicator.color(`\n${indicator.leftFlag} ${'═'.repeat(50)} ${indicator.rightFlag}`));
|
|
131
|
+
lines.push('');
|
|
132
|
+
// Current score
|
|
133
|
+
lines.push(indicator.color(` ${indicator.title}`));
|
|
134
|
+
lines.push(indicator.color(` Current Score: ${currentScore}%`));
|
|
135
|
+
lines.push('');
|
|
136
|
+
// Growth tracking
|
|
137
|
+
lines.push(chalk_1.default.gray(` Birth Score: ${birthScore}%`));
|
|
138
|
+
lines.push(chalk_1.default.gray(` Growth: ${growthSymbol}${Math.abs(growth)}%`));
|
|
139
|
+
// Improvements
|
|
140
|
+
if (improvements.length > 0) {
|
|
141
|
+
lines.push('');
|
|
142
|
+
lines.push(chalk_1.default.cyan(' Recent Improvements:'));
|
|
143
|
+
improvements.slice(0, 3).forEach(imp => {
|
|
144
|
+
lines.push(chalk_1.default.gray(` ☑️ ${imp}`));
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
// Footer
|
|
148
|
+
lines.push('');
|
|
149
|
+
lines.push(indicator.color(`${indicator.leftFlag} ${'═'.repeat(50)} ${indicator.rightFlag}`));
|
|
150
|
+
return lines.join('\n');
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Racing theme score card
|
|
154
|
+
*/
|
|
155
|
+
function formatRacingScoreCard(score, sectors = {}) {
|
|
156
|
+
const indicator = getScoreIndicator(score);
|
|
157
|
+
const lines = [];
|
|
158
|
+
// Racing header
|
|
159
|
+
lines.push(championship_style_1.FAF_COLORS.fafOrange(`\n🏁 ${'━'.repeat(50)} 🏁`));
|
|
160
|
+
lines.push(championship_style_1.FAF_COLORS.fafWhite(' FAF RACING - TELEMETRY REPORT'));
|
|
161
|
+
lines.push(championship_style_1.FAF_COLORS.fafOrange(`🏁 ${'━'.repeat(50)} 🏁`));
|
|
162
|
+
lines.push('');
|
|
163
|
+
// Lap time
|
|
164
|
+
lines.push(indicator.color(` LAP SCORE: ${score}% ${indicator.title}`));
|
|
165
|
+
lines.push('');
|
|
166
|
+
// Sector times
|
|
167
|
+
lines.push(chalk_1.default.cyan(' SECTOR TIMES:'));
|
|
168
|
+
lines.push(chalk_1.default.gray(` S1 Structure: ${sectors.s1 !== undefined ? sectors.s1 + '%' : 'pending'}`));
|
|
169
|
+
lines.push(chalk_1.default.gray(` S2 Content: ${sectors.s2 !== undefined ? sectors.s2 + '%' : 'pending'}`));
|
|
170
|
+
lines.push(chalk_1.default.gray(` S3 Trust: ${sectors.s3 !== undefined ? sectors.s3 + '%' : 'pending'}`));
|
|
171
|
+
lines.push('');
|
|
172
|
+
// Telemetry
|
|
173
|
+
lines.push(chalk_1.default.green(' TELEMETRY:'));
|
|
174
|
+
lines.push(chalk_1.default.gray(` ⚡ Speed: <50ms`));
|
|
175
|
+
lines.push(chalk_1.default.gray(` 🏆 Position: ${score >= 99 ? 'P1' : score >= 85 ? 'P2' : 'P3+'}`));
|
|
176
|
+
lines.push(chalk_1.default.gray(` 📊 DRS: ${score >= 85 ? 'ENABLED' : 'DISABLED'}`));
|
|
177
|
+
// Footer
|
|
178
|
+
lines.push('');
|
|
179
|
+
lines.push(championship_style_1.FAF_COLORS.fafOrange(`🏁 ${'━'.repeat(50)} 🏁`));
|
|
180
|
+
return lines.join('\n');
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* List all available indicators
|
|
184
|
+
*/
|
|
185
|
+
function listScoreIndicators() {
|
|
186
|
+
const lines = [];
|
|
187
|
+
lines.push(chalk_1.default.cyan('\n═══ FAF SCORE INDICATORS ═══\n'));
|
|
188
|
+
exports.SCORE_INDICATORS.forEach(indicator => {
|
|
189
|
+
const range = indicator.max === 999 ? `${indicator.min}%+` : `${indicator.min}-${indicator.max}%`;
|
|
190
|
+
lines.push(indicator.color(`${indicator.leftFlag} ${indicator.title} ${indicator.rightFlag}`));
|
|
191
|
+
lines.push(chalk_1.default.gray(` Range: ${range}`));
|
|
192
|
+
lines.push(chalk_1.default.gray(` ${indicator.description}`));
|
|
193
|
+
lines.push('');
|
|
194
|
+
});
|
|
195
|
+
return lines.join('\n');
|
|
196
|
+
}
|
|
197
|
+
//# sourceMappingURL=score-indicators.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-indicators.js","sourceRoot":"","sources":["../../src/utils/score-indicators.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "faf-cli",
|
|
3
|
-
"version": "2.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "2.4.0",
|
|
4
|
+
"description": "⭐ STAR us: github.com/Wolfe-Jam/faf | 💬 Join 3000+ users: github.com/Wolfe-Jam/faf/discussions | The JPEG for AI™ - FREE tools for a star! Deal?",
|
|
5
5
|
"icon": "https://faf.one/orange-smiley.svg",
|
|
6
6
|
"logo": "https://faf.one/orange-smiley.svg",
|
|
7
7
|
"main": "dist/index.js",
|
|
@@ -29,7 +29,12 @@
|
|
|
29
29
|
"format": "prettier --write src/**/*.ts",
|
|
30
30
|
"emoji:check": "bash .githooks/pre-commit-emoji-check.sh",
|
|
31
31
|
"emoji:audit": "(grep -r '🎯\\|✅' src/ | grep -v 'FORBIDDEN' || echo '☑️ No forbidden emojis found!')",
|
|
32
|
+
"build:engine": "webpack --config webpack.mk2.config.js",
|
|
33
|
+
"obfuscate:engine": "node obfuscate-engine.js",
|
|
34
|
+
"build:protected": "npm run build:engine && npm run obfuscate:engine",
|
|
35
|
+
"build:all": "npm run build:protected && npm run build",
|
|
32
36
|
"prepare": "npm run build && npm run test:audit",
|
|
37
|
+
"prepublish": "npm run build:all",
|
|
33
38
|
"docs:generate": "ts-node scripts/generate-docs.ts",
|
|
34
39
|
"docs:build": "cd docs-site && npm run build",
|
|
35
40
|
"docs:dev": "cd docs-site && npm run dev",
|
|
@@ -69,7 +74,7 @@
|
|
|
69
74
|
"author": "🏎️⚡️_wolfejam.dev",
|
|
70
75
|
"license": "MIT",
|
|
71
76
|
"dependencies": {
|
|
72
|
-
"@faf
|
|
77
|
+
"@wolfejam/faf-engine": "^1.0.0",
|
|
73
78
|
"chalk": "^4.1.2",
|
|
74
79
|
"commander": "^9.5.0",
|
|
75
80
|
"glob": "^11.0.3",
|