faf-cli 2.4.8 → 2.4.10

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 (129) hide show
  1. package/dist/cli.js +0 -0
  2. package/dist/commands/ai-analyze.js +32 -35
  3. package/dist/commands/ai-analyze.js.map +1 -1
  4. package/dist/commands/ai-enhance.js +19 -22
  5. package/dist/commands/ai-enhance.js.map +1 -1
  6. package/dist/commands/audit.js +18 -21
  7. package/dist/commands/audit.js.map +1 -1
  8. package/dist/commands/auto.js +30 -33
  9. package/dist/commands/auto.js.map +1 -1
  10. package/dist/commands/chat.js +2 -2
  11. package/dist/commands/chat.js.map +1 -1
  12. package/dist/commands/convert.js +13 -16
  13. package/dist/commands/convert.js.map +1 -1
  14. package/dist/commands/doctor.js +11 -14
  15. package/dist/commands/doctor.js.map +1 -1
  16. package/dist/commands/edit-helper.js +23 -26
  17. package/dist/commands/edit-helper.js.map +1 -1
  18. package/dist/commands/enhance-real.js +46 -46
  19. package/dist/commands/enhance-real.js.map +1 -1
  20. package/dist/commands/faq.js +12 -12
  21. package/dist/commands/faq.js.map +1 -1
  22. package/dist/commands/formats.js +6 -9
  23. package/dist/commands/formats.js.map +1 -1
  24. package/dist/commands/index.js +11 -14
  25. package/dist/commands/index.js.map +1 -1
  26. package/dist/commands/lint.js +18 -21
  27. package/dist/commands/lint.js.map +1 -1
  28. package/dist/commands/notifications.js +3 -6
  29. package/dist/commands/notifications.js.map +1 -1
  30. package/dist/commands/quick.js +18 -21
  31. package/dist/commands/quick.js.map +1 -1
  32. package/dist/commands/score-v3.js +28 -31
  33. package/dist/commands/score-v3.js.map +1 -1
  34. package/dist/commands/score.js +26 -29
  35. package/dist/commands/score.js.map +1 -1
  36. package/dist/commands/show.js +25 -28
  37. package/dist/commands/show.js.map +1 -1
  38. package/dist/commands/sync.js +17 -20
  39. package/dist/commands/sync.js.map +1 -1
  40. package/dist/commands/trust.js +31 -31
  41. package/dist/commands/trust.js.map +1 -1
  42. package/dist/commands/verify.js +21 -21
  43. package/dist/commands/verify.js.map +1 -1
  44. package/dist/commands/version.js +6 -9
  45. package/dist/commands/version.js.map +1 -1
  46. package/dist/commands/vibe.js +2 -5
  47. package/dist/commands/vibe.js.map +1 -1
  48. package/dist/commands/welcome.js +15 -18
  49. package/dist/commands/welcome.js.map +1 -1
  50. package/dist/tests/test-chrome-fuzzy.js +7 -10
  51. package/dist/tests/test-chrome-fuzzy.js.map +1 -1
  52. package/dist/utils/announcements.js +27 -27
  53. package/dist/utils/announcements.js.map +1 -1
  54. package/dist/utils/chrome-extension-confirmer.js +5 -5
  55. package/dist/utils/chrome-extension-confirmer.js.map +1 -1
  56. package/dist/utils/color-utils.d.ts +6 -6
  57. package/dist/utils/color-utils.js +20 -23
  58. package/dist/utils/color-utils.js.map +1 -1
  59. package/dist/utils/email-opt-in.js +22 -22
  60. package/dist/utils/email-opt-in.js.map +1 -1
  61. package/dist/utils/feedback-messages.d.ts +1 -1
  62. package/dist/utils/feedback-messages.d.ts.map +1 -1
  63. package/dist/utils/feedback-messages.js +32 -35
  64. package/dist/utils/feedback-messages.js.map +1 -1
  65. package/dist/utils/score-header.js +7 -10
  66. package/dist/utils/score-header.js.map +1 -1
  67. package/dist/utils/update-checker.js +2 -2
  68. package/dist/utils/update-checker.js.map +1 -1
  69. package/package.json +2 -2
  70. package/dist/commands/about.d.ts +0 -10
  71. package/dist/commands/about.d.ts.map +0 -1
  72. package/dist/commands/about.js +0 -249
  73. package/dist/commands/about.js.map +0 -1
  74. package/dist/commands/art.d.ts +0 -10
  75. package/dist/commands/art.d.ts.map +0 -1
  76. package/dist/commands/art.js +0 -130
  77. package/dist/commands/art.js.map +0 -1
  78. package/dist/commands/email.d.ts +0 -23
  79. package/dist/commands/email.d.ts.map +0 -1
  80. package/dist/commands/email.js +0 -183
  81. package/dist/commands/email.js.map +0 -1
  82. package/dist/commands/license-config.d.ts +0 -10
  83. package/dist/commands/license-config.d.ts.map +0 -1
  84. package/dist/commands/license-config.js +0 -140
  85. package/dist/commands/license-config.js.map +0 -1
  86. package/dist/commands/license.d.ts +0 -7
  87. package/dist/commands/license.d.ts.map +0 -1
  88. package/dist/commands/license.js +0 -60
  89. package/dist/commands/license.js.map +0 -1
  90. package/dist/commands/submit-art.d.ts +0 -25
  91. package/dist/commands/submit-art.d.ts.map +0 -1
  92. package/dist/commands/submit-art.js +0 -348
  93. package/dist/commands/submit-art.js.map +0 -1
  94. package/dist/commands/subscribe.d.ts +0 -12
  95. package/dist/commands/subscribe.d.ts.map +0 -1
  96. package/dist/commands/subscribe.js +0 -38
  97. package/dist/commands/subscribe.js.map +0 -1
  98. package/dist/engine/engine-loader.d.ts +0 -24
  99. package/dist/engine/engine-loader.d.ts.map +0 -1
  100. package/dist/engine/engine-loader.js +0 -156
  101. package/dist/engine/engine-loader.js.map +0 -1
  102. package/dist/engine-bridge.d.ts +0 -38
  103. package/dist/engine-bridge.d.ts.map +0 -1
  104. package/dist/engine-bridge.js +0 -71
  105. package/dist/engine-bridge.js.map +0 -1
  106. package/dist/engine-mk2/mk2-core.d.ts +0 -38
  107. package/dist/engine-mk2/mk2-core.d.ts.map +0 -1
  108. package/dist/engine-mk2/mk2-core.js +0 -217
  109. package/dist/engine-mk2/mk2-core.js.map +0 -1
  110. package/dist/license/license-config.d.ts +0 -59
  111. package/dist/license/license-config.d.ts.map +0 -1
  112. package/dist/license/license-config.js +0 -263
  113. package/dist/license/license-config.js.map +0 -1
  114. package/dist/license/license-controller.d.ts +0 -41
  115. package/dist/license/license-controller.d.ts.map +0 -1
  116. package/dist/license/license-controller.js +0 -243
  117. package/dist/license/license-controller.js.map +0 -1
  118. package/dist/utils/art-gallery.d.ts +0 -66
  119. package/dist/utils/art-gallery.d.ts.map +0 -1
  120. package/dist/utils/art-gallery.js +0 -320
  121. package/dist/utils/art-gallery.js.map +0 -1
  122. package/dist/utils/error-handler.d.ts +0 -27
  123. package/dist/utils/error-handler.d.ts.map +0 -1
  124. package/dist/utils/error-handler.js +0 -152
  125. package/dist/utils/error-handler.js.map +0 -1
  126. package/dist/utils/score-indicators.d.ts +0 -47
  127. package/dist/utils/score-indicators.d.ts.map +0 -1
  128. package/dist/utils/score-indicators.js +0 -197
  129. package/dist/utils/score-indicators.js.map +0 -1
@@ -1,197 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"score-indicators.js","sourceRoot":"","sources":["../../src/utils/score-indicators.ts"],"names":[],"mappings":"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"}