faf-cli 2.4.7 → 2.4.9
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/cli.js +0 -0
- package/dist/commands/ai-analyze.js +32 -35
- package/dist/commands/ai-analyze.js.map +1 -1
- package/dist/commands/ai-enhance.js +19 -22
- package/dist/commands/ai-enhance.js.map +1 -1
- package/dist/commands/audit.js +18 -21
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/auto.js +30 -33
- package/dist/commands/auto.js.map +1 -1
- package/dist/commands/chat.js +2 -2
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/convert.js +13 -16
- package/dist/commands/convert.js.map +1 -1
- package/dist/commands/doctor.js +11 -14
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/edit-helper.js +23 -26
- package/dist/commands/edit-helper.js.map +1 -1
- package/dist/commands/enhance-real.js +46 -46
- package/dist/commands/enhance-real.js.map +1 -1
- package/dist/commands/faq.js +12 -12
- package/dist/commands/faq.js.map +1 -1
- package/dist/commands/formats.js +6 -9
- package/dist/commands/formats.js.map +1 -1
- package/dist/commands/index.js +11 -14
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.js +12 -12
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/lint.js +18 -21
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/notifications.js +3 -6
- package/dist/commands/notifications.js.map +1 -1
- package/dist/commands/quick.js +18 -21
- package/dist/commands/quick.js.map +1 -1
- package/dist/commands/score-v3.js +28 -31
- package/dist/commands/score-v3.js.map +1 -1
- package/dist/commands/score.js +26 -29
- package/dist/commands/score.js.map +1 -1
- package/dist/commands/show.js +25 -28
- package/dist/commands/show.js.map +1 -1
- package/dist/commands/sync.js +17 -20
- package/dist/commands/sync.js.map +1 -1
- package/dist/commands/trust.js +31 -31
- package/dist/commands/trust.js.map +1 -1
- package/dist/commands/verify.js +21 -21
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/version.js +6 -9
- package/dist/commands/version.js.map +1 -1
- package/dist/commands/vibe.js +2 -5
- package/dist/commands/vibe.js.map +1 -1
- package/dist/commands/welcome.js +15 -18
- package/dist/commands/welcome.js.map +1 -1
- package/dist/tests/test-chrome-fuzzy.js +7 -10
- package/dist/tests/test-chrome-fuzzy.js.map +1 -1
- package/dist/utils/announcements.js +27 -27
- package/dist/utils/announcements.js.map +1 -1
- package/dist/utils/chrome-extension-confirmer.js +5 -5
- package/dist/utils/chrome-extension-confirmer.js.map +1 -1
- package/dist/utils/color-utils.d.ts +6 -6
- package/dist/utils/color-utils.js +20 -23
- package/dist/utils/color-utils.js.map +1 -1
- package/dist/utils/email-opt-in.js +22 -22
- package/dist/utils/email-opt-in.js.map +1 -1
- package/dist/utils/feedback-messages.d.ts +1 -1
- package/dist/utils/feedback-messages.d.ts.map +1 -1
- package/dist/utils/feedback-messages.js +32 -35
- package/dist/utils/feedback-messages.js.map +1 -1
- package/dist/utils/native-cli-parser.d.ts +4 -1
- package/dist/utils/native-cli-parser.d.ts.map +1 -1
- package/dist/utils/native-cli-parser.js +6 -2
- package/dist/utils/native-cli-parser.js.map +1 -1
- package/dist/utils/score-header.js +7 -10
- package/dist/utils/score-header.js.map +1 -1
- package/dist/utils/update-checker.js +2 -2
- package/dist/utils/update-checker.js.map +1 -1
- package/package.json +2 -2
- package/dist/commands/about.d.ts +0 -10
- package/dist/commands/about.d.ts.map +0 -1
- package/dist/commands/about.js +0 -249
- package/dist/commands/about.js.map +0 -1
- package/dist/commands/art.d.ts +0 -10
- package/dist/commands/art.d.ts.map +0 -1
- package/dist/commands/art.js +0 -130
- package/dist/commands/art.js.map +0 -1
- package/dist/commands/email.d.ts +0 -23
- package/dist/commands/email.d.ts.map +0 -1
- package/dist/commands/email.js +0 -183
- package/dist/commands/email.js.map +0 -1
- package/dist/commands/license-config.d.ts +0 -10
- package/dist/commands/license-config.d.ts.map +0 -1
- package/dist/commands/license-config.js +0 -140
- package/dist/commands/license-config.js.map +0 -1
- package/dist/commands/license.d.ts +0 -7
- package/dist/commands/license.d.ts.map +0 -1
- package/dist/commands/license.js +0 -60
- package/dist/commands/license.js.map +0 -1
- package/dist/commands/submit-art.d.ts +0 -25
- package/dist/commands/submit-art.d.ts.map +0 -1
- package/dist/commands/submit-art.js +0 -348
- package/dist/commands/submit-art.js.map +0 -1
- package/dist/commands/subscribe.d.ts +0 -12
- package/dist/commands/subscribe.d.ts.map +0 -1
- package/dist/commands/subscribe.js +0 -38
- package/dist/commands/subscribe.js.map +0 -1
- package/dist/engine/engine-loader.d.ts +0 -24
- package/dist/engine/engine-loader.d.ts.map +0 -1
- package/dist/engine/engine-loader.js +0 -156
- package/dist/engine/engine-loader.js.map +0 -1
- package/dist/engine-bridge.d.ts +0 -38
- package/dist/engine-bridge.d.ts.map +0 -1
- package/dist/engine-bridge.js +0 -71
- package/dist/engine-bridge.js.map +0 -1
- package/dist/engine-mk2/mk2-core.d.ts +0 -38
- package/dist/engine-mk2/mk2-core.d.ts.map +0 -1
- package/dist/engine-mk2/mk2-core.js +0 -217
- package/dist/engine-mk2/mk2-core.js.map +0 -1
- package/dist/license/license-config.d.ts +0 -59
- package/dist/license/license-config.d.ts.map +0 -1
- package/dist/license/license-config.js +0 -263
- package/dist/license/license-config.js.map +0 -1
- package/dist/license/license-controller.d.ts +0 -41
- package/dist/license/license-controller.d.ts.map +0 -1
- package/dist/license/license-controller.js +0 -243
- package/dist/license/license-controller.js.map +0 -1
- package/dist/utils/art-gallery.d.ts +0 -66
- package/dist/utils/art-gallery.d.ts.map +0 -1
- package/dist/utils/art-gallery.js +0 -320
- package/dist/utils/art-gallery.js.map +0 -1
- package/dist/utils/error-handler.d.ts +0 -27
- package/dist/utils/error-handler.d.ts.map +0 -1
- package/dist/utils/error-handler.js +0 -152
- package/dist/utils/error-handler.js.map +0 -1
- package/dist/utils/score-indicators.d.ts +0 -47
- package/dist/utils/score-indicators.d.ts.map +0 -1
- package/dist/utils/score-indicators.js +0 -197
- package/dist/utils/score-indicators.js.map +0 -1
|
@@ -1,348 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* 🎨 Submit Art Command - Let users contribute their own FAF art!
|
|
4
|
-
* Building a community gallery of creativity
|
|
5
|
-
*/
|
|
6
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
-
if (k2 === undefined) k2 = k;
|
|
8
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
-
}
|
|
12
|
-
Object.defineProperty(o, k2, desc);
|
|
13
|
-
}) : (function(o, m, k, k2) {
|
|
14
|
-
if (k2 === undefined) k2 = k;
|
|
15
|
-
o[k2] = m[k];
|
|
16
|
-
}));
|
|
17
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
-
}) : function(o, v) {
|
|
20
|
-
o["default"] = v;
|
|
21
|
-
});
|
|
22
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
-
var ownKeys = function(o) {
|
|
24
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
-
var ar = [];
|
|
26
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
|
-
return ownKeys(o);
|
|
30
|
-
};
|
|
31
|
-
return function (mod) {
|
|
32
|
-
if (mod && mod.__esModule) return mod;
|
|
33
|
-
var result = {};
|
|
34
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
-
__setModuleDefault(result, mod);
|
|
36
|
-
return result;
|
|
37
|
-
};
|
|
38
|
-
})();
|
|
39
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
40
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
41
|
-
};
|
|
42
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
|
-
exports.submitArtCommand = submitArtCommand;
|
|
44
|
-
exports.viewGalleryCommand = viewGalleryCommand;
|
|
45
|
-
exports.shareArtCommand = shareArtCommand;
|
|
46
|
-
exports.importArtCommand = importArtCommand;
|
|
47
|
-
exports.getUserArt = getUserArt;
|
|
48
|
-
const fs = __importStar(require("fs/promises"));
|
|
49
|
-
const path = __importStar(require("path"));
|
|
50
|
-
const os = __importStar(require("os"));
|
|
51
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
52
|
-
const championship_style_1 = require("../utils/championship-style");
|
|
53
|
-
const USER_GALLERY_DIR = path.join(os.homedir(), '.faf', 'user-gallery');
|
|
54
|
-
const SUBMISSION_FILE = path.join(USER_GALLERY_DIR, 'submissions.json');
|
|
55
|
-
/**
|
|
56
|
-
* Submit new art to the gallery
|
|
57
|
-
*/
|
|
58
|
-
async function submitArtCommand() {
|
|
59
|
-
const inquirer = await Promise.resolve().then(() => __importStar(require('inquirer')));
|
|
60
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('╔══════════════════════════════════════════════════════════════╗'));
|
|
61
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('║') + ' 🎨 FAF ART SUBMISSION STUDIO 🎨 ' + championship_style_1.FAF_COLORS.fafCyan('║'));
|
|
62
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('╚══════════════════════════════════════════════════════════════╝'));
|
|
63
|
-
console.log();
|
|
64
|
-
// Get art details
|
|
65
|
-
const details = await inquirer.default.prompt([
|
|
66
|
-
{
|
|
67
|
-
type: 'input',
|
|
68
|
-
name: 'name',
|
|
69
|
-
message: '🎨 Name your art style:',
|
|
70
|
-
validate: (input) => input.length > 0 && input.length < 30
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
type: 'input',
|
|
74
|
-
name: 'author',
|
|
75
|
-
message: '✍️ Your name/handle:',
|
|
76
|
-
default: process.env.USER || 'anonymous'
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
type: 'input',
|
|
80
|
-
name: 'description',
|
|
81
|
-
message: '📝 Description (optional):',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
type: 'list',
|
|
85
|
-
name: 'scoreRequirement',
|
|
86
|
-
message: '🏆 Minimum score to unlock this art:',
|
|
87
|
-
choices: [
|
|
88
|
-
{ name: '0% - Available to everyone', value: 0 },
|
|
89
|
-
{ name: '50% - Halfway there', value: 50 },
|
|
90
|
-
{ name: '70% - Good progress', value: 70 },
|
|
91
|
-
{ name: '85% - High achievers', value: 85 },
|
|
92
|
-
{ name: '99% - Champions only!', value: 99 },
|
|
93
|
-
{ name: '105% - BIG ORANGE exclusive!', value: 105 }
|
|
94
|
-
]
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
type: 'list',
|
|
98
|
-
name: 'inputMethod',
|
|
99
|
-
message: '📥 How will you provide the art?',
|
|
100
|
-
choices: [
|
|
101
|
-
{ name: 'Type/paste it now', value: 'inline' },
|
|
102
|
-
{ name: 'Load from file', value: 'file' },
|
|
103
|
-
{ name: 'Use editor', value: 'editor' }
|
|
104
|
-
]
|
|
105
|
-
}
|
|
106
|
-
]);
|
|
107
|
-
let artContent = '';
|
|
108
|
-
// Get the art content
|
|
109
|
-
if (details.inputMethod === 'inline') {
|
|
110
|
-
console.log(chalk_1.default.yellow('\nPaste your ASCII art below (press Enter twice when done):\n'));
|
|
111
|
-
const lines = [];
|
|
112
|
-
let emptyLineCount = 0;
|
|
113
|
-
// Read until we get two empty lines
|
|
114
|
-
const readline = require('readline').createInterface({
|
|
115
|
-
input: process.stdin,
|
|
116
|
-
output: process.stdout
|
|
117
|
-
});
|
|
118
|
-
await new Promise((resolve) => {
|
|
119
|
-
readline.on('line', (line) => {
|
|
120
|
-
if (line === '') {
|
|
121
|
-
emptyLineCount++;
|
|
122
|
-
if (emptyLineCount >= 2) {
|
|
123
|
-
readline.close();
|
|
124
|
-
resolve();
|
|
125
|
-
return;
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
emptyLineCount = 0;
|
|
130
|
-
}
|
|
131
|
-
lines.push(line);
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
artContent = lines.join('\n').trim();
|
|
135
|
-
}
|
|
136
|
-
else if (details.inputMethod === 'file') {
|
|
137
|
-
const fileAnswer = await inquirer.default.prompt([
|
|
138
|
-
{
|
|
139
|
-
type: 'input',
|
|
140
|
-
name: 'filepath',
|
|
141
|
-
message: '📂 Path to art file:',
|
|
142
|
-
validate: async (input) => {
|
|
143
|
-
try {
|
|
144
|
-
await fs.access(input);
|
|
145
|
-
return true;
|
|
146
|
-
}
|
|
147
|
-
catch {
|
|
148
|
-
return 'File not found';
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
]);
|
|
153
|
-
artContent = await fs.readFile(fileAnswer.filepath, 'utf-8');
|
|
154
|
-
}
|
|
155
|
-
else if (details.inputMethod === 'editor') {
|
|
156
|
-
const editorAnswer = await inquirer.default.prompt([
|
|
157
|
-
{
|
|
158
|
-
type: 'editor',
|
|
159
|
-
name: 'art',
|
|
160
|
-
message: '✏️ Create your art in the editor:'
|
|
161
|
-
}
|
|
162
|
-
]);
|
|
163
|
-
artContent = editorAnswer.art;
|
|
164
|
-
}
|
|
165
|
-
// Validate art
|
|
166
|
-
if (!artContent || artContent.length < 10) {
|
|
167
|
-
console.log(chalk_1.default.red('❌ Art seems too short. Please try again.'));
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
|
-
// Add placeholder for version
|
|
171
|
-
if (!artContent.includes('{version}') && !artContent.includes('v2.')) {
|
|
172
|
-
console.log(chalk_1.default.yellow('💡 TIP: Use {version} as placeholder for version number'));
|
|
173
|
-
}
|
|
174
|
-
// Preview the art
|
|
175
|
-
console.log(chalk_1.default.cyan('\n═══ PREVIEW ═══\n'));
|
|
176
|
-
console.log(artContent.replace(/{version}/g, '2.4.0'));
|
|
177
|
-
console.log(chalk_1.default.cyan('\n═══════════════\n'));
|
|
178
|
-
const confirm = await inquirer.default.prompt([
|
|
179
|
-
{
|
|
180
|
-
type: 'confirm',
|
|
181
|
-
name: 'submit',
|
|
182
|
-
message: '💾 Save this art to your gallery?',
|
|
183
|
-
default: true
|
|
184
|
-
}
|
|
185
|
-
]);
|
|
186
|
-
if (!confirm.submit) {
|
|
187
|
-
console.log(chalk_1.default.yellow('Cancelled'));
|
|
188
|
-
return;
|
|
189
|
-
}
|
|
190
|
-
// Save the art
|
|
191
|
-
await saveUserArt({
|
|
192
|
-
id: generateId(),
|
|
193
|
-
name: details.name,
|
|
194
|
-
author: details.author,
|
|
195
|
-
description: details.description,
|
|
196
|
-
art: artContent,
|
|
197
|
-
score: details.scoreRequirement,
|
|
198
|
-
timestamp: new Date().toISOString(),
|
|
199
|
-
version: require('../../package.json').version
|
|
200
|
-
});
|
|
201
|
-
console.log(championship_style_1.FAF_COLORS.fafGreen('\n✅ Art submitted successfully!'));
|
|
202
|
-
console.log(chalk_1.default.gray(`\nTo use your art: faf --art-style user:${details.name}`));
|
|
203
|
-
console.log(chalk_1.default.gray(`To share: faf art share ${details.name}`));
|
|
204
|
-
console.log(chalk_1.default.gray(`To view gallery: faf art gallery\n`));
|
|
205
|
-
}
|
|
206
|
-
/**
|
|
207
|
-
* View user gallery
|
|
208
|
-
*/
|
|
209
|
-
async function viewGalleryCommand(filter) {
|
|
210
|
-
const arts = await loadUserArts();
|
|
211
|
-
if (arts.length === 0) {
|
|
212
|
-
console.log(chalk_1.default.yellow('No user art submissions yet!'));
|
|
213
|
-
console.log(chalk_1.default.gray('Submit your own with: faf submit-art'));
|
|
214
|
-
return;
|
|
215
|
-
}
|
|
216
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('╔══════════════════════════════════════════════════════════════╗'));
|
|
217
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('║') + ' 🎨 USER ART GALLERY 🎨 ' + championship_style_1.FAF_COLORS.fafCyan('║'));
|
|
218
|
-
console.log(championship_style_1.FAF_COLORS.fafCyan('╚══════════════════════════════════════════════════════════════╝'));
|
|
219
|
-
console.log();
|
|
220
|
-
const filtered = filter
|
|
221
|
-
? arts.filter(a => a.name.toLowerCase().includes(filter.toLowerCase()) ||
|
|
222
|
-
a.author.toLowerCase().includes(filter.toLowerCase()))
|
|
223
|
-
: arts;
|
|
224
|
-
for (const art of filtered) {
|
|
225
|
-
console.log(chalk_1.default.yellow(`\n═══ ${art.name.toUpperCase()} ═══`));
|
|
226
|
-
console.log(chalk_1.default.gray(`By: ${art.author} | ${art.timestamp.split('T')[0]}`));
|
|
227
|
-
if (art.description) {
|
|
228
|
-
console.log(chalk_1.default.gray(art.description));
|
|
229
|
-
}
|
|
230
|
-
if (art.score && art.score > 0) {
|
|
231
|
-
console.log(chalk_1.default.gray(`Requires: ${art.score}% score`));
|
|
232
|
-
}
|
|
233
|
-
console.log();
|
|
234
|
-
console.log(art.art.replace(/{version}/g, '2.4.0'));
|
|
235
|
-
console.log();
|
|
236
|
-
}
|
|
237
|
-
console.log(chalk_1.default.gray(`\n📊 Total submissions: ${filtered.length}`));
|
|
238
|
-
}
|
|
239
|
-
/**
|
|
240
|
-
* Share art (generate shareable format)
|
|
241
|
-
*/
|
|
242
|
-
async function shareArtCommand(name) {
|
|
243
|
-
const arts = await loadUserArts();
|
|
244
|
-
const art = arts.find(a => a.name.toLowerCase() === name.toLowerCase());
|
|
245
|
-
if (!art) {
|
|
246
|
-
console.log(chalk_1.default.red(`Art "${name}" not found`));
|
|
247
|
-
console.log(chalk_1.default.gray('Use "faf art gallery" to see available art'));
|
|
248
|
-
return;
|
|
249
|
-
}
|
|
250
|
-
const shareData = {
|
|
251
|
-
faf_art: {
|
|
252
|
-
version: '1.0',
|
|
253
|
-
art: art
|
|
254
|
-
}
|
|
255
|
-
};
|
|
256
|
-
const encoded = Buffer.from(JSON.stringify(shareData)).toString('base64');
|
|
257
|
-
console.log(chalk_1.default.cyan('\n═══ SHAREABLE ART CODE ═══\n'));
|
|
258
|
-
console.log(chalk_1.default.yellow(encoded));
|
|
259
|
-
console.log(chalk_1.default.cyan('\n═══════════════════════════\n'));
|
|
260
|
-
console.log(chalk_1.default.gray('Share this code with others!'));
|
|
261
|
-
console.log(chalk_1.default.gray('They can import with: faf art import <code>'));
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* Import shared art
|
|
265
|
-
*/
|
|
266
|
-
async function importArtCommand(code) {
|
|
267
|
-
try {
|
|
268
|
-
const decoded = Buffer.from(code, 'base64').toString('utf-8');
|
|
269
|
-
const data = JSON.parse(decoded);
|
|
270
|
-
if (!data.faf_art || !data.faf_art.art) {
|
|
271
|
-
throw new Error('Invalid art code');
|
|
272
|
-
}
|
|
273
|
-
const art = data.faf_art.art;
|
|
274
|
-
console.log(chalk_1.default.cyan('\n═══ PREVIEW IMPORTED ART ═══\n'));
|
|
275
|
-
console.log(chalk_1.default.yellow(`Name: ${art.name}`));
|
|
276
|
-
console.log(chalk_1.default.gray(`Author: ${art.author}`));
|
|
277
|
-
console.log();
|
|
278
|
-
console.log(art.art.replace(/{version}/g, '2.4.0'));
|
|
279
|
-
console.log();
|
|
280
|
-
const inquirer = await Promise.resolve().then(() => __importStar(require('inquirer')));
|
|
281
|
-
const confirm = await inquirer.default.prompt([
|
|
282
|
-
{
|
|
283
|
-
type: 'confirm',
|
|
284
|
-
name: 'import',
|
|
285
|
-
message: '💾 Import this art to your gallery?',
|
|
286
|
-
default: true
|
|
287
|
-
}
|
|
288
|
-
]);
|
|
289
|
-
if (confirm.import) {
|
|
290
|
-
await saveUserArt(art);
|
|
291
|
-
console.log(championship_style_1.FAF_COLORS.fafGreen('✅ Art imported successfully!'));
|
|
292
|
-
console.log(chalk_1.default.gray(`Use with: faf --art-style user:${art.name}`));
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
catch (error) {
|
|
296
|
-
console.log(chalk_1.default.red('❌ Invalid art code'));
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
/**
|
|
300
|
-
* Helper functions
|
|
301
|
-
*/
|
|
302
|
-
async function ensureGalleryDir() {
|
|
303
|
-
try {
|
|
304
|
-
await fs.mkdir(USER_GALLERY_DIR, { recursive: true });
|
|
305
|
-
}
|
|
306
|
-
catch {
|
|
307
|
-
// Dir exists
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
async function loadUserArts() {
|
|
311
|
-
await ensureGalleryDir();
|
|
312
|
-
try {
|
|
313
|
-
const data = await fs.readFile(SUBMISSION_FILE, 'utf-8');
|
|
314
|
-
return JSON.parse(data);
|
|
315
|
-
}
|
|
316
|
-
catch {
|
|
317
|
-
return [];
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
async function saveUserArt(art) {
|
|
321
|
-
await ensureGalleryDir();
|
|
322
|
-
const arts = await loadUserArts();
|
|
323
|
-
// Check for duplicates
|
|
324
|
-
const existing = arts.findIndex(a => a.id === art.id);
|
|
325
|
-
if (existing >= 0) {
|
|
326
|
-
arts[existing] = art;
|
|
327
|
-
}
|
|
328
|
-
else {
|
|
329
|
-
arts.push(art);
|
|
330
|
-
}
|
|
331
|
-
await fs.writeFile(SUBMISSION_FILE, JSON.stringify(arts, null, 2));
|
|
332
|
-
}
|
|
333
|
-
function generateId() {
|
|
334
|
-
return Date.now().toString(36) + Math.random().toString(36).substr(2);
|
|
335
|
-
}
|
|
336
|
-
/**
|
|
337
|
-
* Get user art by name (for use in art gallery)
|
|
338
|
-
*/
|
|
339
|
-
async function getUserArt(name) {
|
|
340
|
-
const arts = await loadUserArts();
|
|
341
|
-
const art = arts.find(a => a.name.toLowerCase() === name.toLowerCase());
|
|
342
|
-
if (art) {
|
|
343
|
-
const version = require('../../package.json').version;
|
|
344
|
-
return art.art.replace(/{version}/g, version);
|
|
345
|
-
}
|
|
346
|
-
return null;
|
|
347
|
-
}
|
|
348
|
-
//# sourceMappingURL=submit-art.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"submit-art.js","sourceRoot":"","sources":["../../src/commands/submit-art.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 📧 faf subscribe - Email subscription management
|
|
3
|
-
*/
|
|
4
|
-
interface SubscribeOptions {
|
|
5
|
-
email?: string;
|
|
6
|
-
status?: boolean;
|
|
7
|
-
unsubscribe?: boolean;
|
|
8
|
-
quiet?: boolean;
|
|
9
|
-
}
|
|
10
|
-
export declare function subscribeCommand(options?: SubscribeOptions): Promise<void>;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=subscribe.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subscribe.d.ts","sourceRoot":"","sources":["../../src/commands/subscribe.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,UAAU,gBAAgB;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAsB,gBAAgB,CAAC,OAAO,GAAE,gBAAqB,iBA4BpE"}
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* 📧 faf subscribe - Email subscription management
|
|
4
|
-
*/
|
|
5
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
-
};
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.subscribeCommand = subscribeCommand;
|
|
10
|
-
const chalk_1 = __importDefault(require("chalk"));
|
|
11
|
-
const email_opt_in_1 = require("../utils/email-opt-in");
|
|
12
|
-
async function subscribeCommand(options = {}) {
|
|
13
|
-
try {
|
|
14
|
-
// Show status
|
|
15
|
-
if (options.status) {
|
|
16
|
-
(0, email_opt_in_1.showSubscriptionStatus)();
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
// Unsubscribe
|
|
20
|
-
if (options.unsubscribe) {
|
|
21
|
-
(0, email_opt_in_1.unsubscribe)();
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
// Subscribe with provided email
|
|
25
|
-
if (options.email) {
|
|
26
|
-
await (0, email_opt_in_1.subscribeViaFlag)(options.email);
|
|
27
|
-
return;
|
|
28
|
-
}
|
|
29
|
-
// Interactive subscribe
|
|
30
|
-
await (0, email_opt_in_1.promptEmailOptIn)({ quiet: options.quiet });
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
console.log(chalk_1.default.red('Error managing subscription:'));
|
|
34
|
-
console.log(chalk_1.default.red(error instanceof Error ? error.message : String(error)));
|
|
35
|
-
process.exit(1);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
//# sourceMappingURL=subscribe.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subscribe.js","sourceRoot":"","sources":["../../src/commands/subscribe.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AAiBH,4CA4BC;AA3CD,kDAA0B;AAC1B,wDAK+B;AASxB,KAAK,UAAU,gBAAgB,CAAC,UAA4B,EAAE;IACjE,IAAI,CAAC;QACD,cAAc;QACd,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,IAAA,qCAAsB,GAAE,CAAC;YACzB,OAAO;QACX,CAAC;QAED,cAAc;QACd,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YACtB,IAAA,0BAAW,GAAE,CAAC;YACd,OAAO;QACX,CAAC;QAED,gCAAgC;QAChC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAA,+BAAgB,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACtC,OAAO;QACX,CAAC;QAED,wBAAwB;QACxB,MAAM,IAAA,+BAAgB,EAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAErD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Engine Loader - Loads MK-1 or MK-2 based on license
|
|
3
|
-
*/
|
|
4
|
-
interface Engine {
|
|
5
|
-
name: string;
|
|
6
|
-
version: string;
|
|
7
|
-
analyzeProject(path: string): Promise<any>;
|
|
8
|
-
calculateScore(data: any): Promise<any>;
|
|
9
|
-
}
|
|
10
|
-
declare class EngineLoader {
|
|
11
|
-
private static instance;
|
|
12
|
-
private currentEngine;
|
|
13
|
-
private constructor();
|
|
14
|
-
static getInstance(): EngineLoader;
|
|
15
|
-
loadEngine(): Promise<Engine>;
|
|
16
|
-
private loadMK1;
|
|
17
|
-
private loadMK2;
|
|
18
|
-
private getFallbackEngine;
|
|
19
|
-
getEngineInfo(): any;
|
|
20
|
-
reloadWithNewLicense(): Promise<Engine>;
|
|
21
|
-
}
|
|
22
|
-
export declare const engineLoader: EngineLoader;
|
|
23
|
-
export {};
|
|
24
|
-
//# sourceMappingURL=engine-loader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine-loader.d.ts","sourceRoot":"","sources":["../../src/engine/engine-loader.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,UAAU,MAAM;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3C,cAAc,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;CACzC;AAED,cAAM,YAAY;IAChB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAe;IACtC,OAAO,CAAC,aAAa,CAAuB;IAE5C,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,YAAY;IAO5B,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;YA0BrB,OAAO;YAoDP,OAAO;IAqCrB,OAAO,CAAC,iBAAiB;IAwBzB,aAAa,IAAI,GAAG;IAcd,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC;CAI9C;AAED,eAAO,MAAM,YAAY,cAA6B,CAAC"}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Engine Loader - Loads MK-1 or MK-2 based on license
|
|
4
|
-
*/
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.engineLoader = void 0;
|
|
7
|
-
const license_controller_1 = require("../license/license-controller");
|
|
8
|
-
class EngineLoader {
|
|
9
|
-
static instance;
|
|
10
|
-
currentEngine = null;
|
|
11
|
-
constructor() { }
|
|
12
|
-
static getInstance() {
|
|
13
|
-
if (!this.instance) {
|
|
14
|
-
this.instance = new EngineLoader();
|
|
15
|
-
}
|
|
16
|
-
return this.instance;
|
|
17
|
-
}
|
|
18
|
-
async loadEngine() {
|
|
19
|
-
if (this.currentEngine) {
|
|
20
|
-
return this.currentEngine;
|
|
21
|
-
}
|
|
22
|
-
const license = license_controller_1.licenseController.getLicense();
|
|
23
|
-
const engineVersion = license.engine;
|
|
24
|
-
console.log(`Loading ${engineVersion} engine (${license.type} license)`);
|
|
25
|
-
try {
|
|
26
|
-
if (engineVersion === 'MK-2' && license_controller_1.licenseController.canUseEngine('MK-2')) {
|
|
27
|
-
// Load MK-2 (obfuscated in production)
|
|
28
|
-
this.currentEngine = await this.loadMK2();
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
// Fall back to MK-1
|
|
32
|
-
this.currentEngine = await this.loadMK1();
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
catch (error) {
|
|
36
|
-
console.warn('Failed to load engine, using fallback');
|
|
37
|
-
this.currentEngine = this.getFallbackEngine();
|
|
38
|
-
}
|
|
39
|
-
return this.currentEngine;
|
|
40
|
-
}
|
|
41
|
-
async loadMK1() {
|
|
42
|
-
// MK-1 is the basic engine
|
|
43
|
-
return {
|
|
44
|
-
name: 'FAF Engine MK-1',
|
|
45
|
-
version: '1.0.0',
|
|
46
|
-
async analyzeProject(path) {
|
|
47
|
-
// Basic analysis
|
|
48
|
-
const fs = require('fs');
|
|
49
|
-
const glob = require('glob');
|
|
50
|
-
const files = glob.sync('**/*', {
|
|
51
|
-
cwd: path,
|
|
52
|
-
ignore: ['node_modules/**', '.git/**'],
|
|
53
|
-
nodir: true
|
|
54
|
-
});
|
|
55
|
-
return {
|
|
56
|
-
engine: 'MK-1',
|
|
57
|
-
filesFound: files.length,
|
|
58
|
-
formats: this.detectBasicFormats(files),
|
|
59
|
-
score: Math.min(70, 10 + files.length) // Capped at 70%
|
|
60
|
-
};
|
|
61
|
-
},
|
|
62
|
-
async calculateScore(data) {
|
|
63
|
-
const baseScore = 10;
|
|
64
|
-
const fileBonus = Math.min(30, data.filesFound || 0);
|
|
65
|
-
const formatBonus = Math.min(30, (data.formats?.length || 0) * 5);
|
|
66
|
-
const total = baseScore + fileBonus + formatBonus;
|
|
67
|
-
const capped = Math.min(70, total); // MK-1 caps at 70%
|
|
68
|
-
return {
|
|
69
|
-
engine: 'MK-1',
|
|
70
|
-
score: capped,
|
|
71
|
-
limit: 70,
|
|
72
|
-
capped: total > 70
|
|
73
|
-
};
|
|
74
|
-
},
|
|
75
|
-
detectBasicFormats(files) {
|
|
76
|
-
const formats = new Set();
|
|
77
|
-
files.forEach(file => {
|
|
78
|
-
const ext = file.split('.').pop();
|
|
79
|
-
if (ext)
|
|
80
|
-
formats.add(ext);
|
|
81
|
-
});
|
|
82
|
-
return Array.from(formats);
|
|
83
|
-
}
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
async loadMK2() {
|
|
87
|
-
try {
|
|
88
|
-
// In production, this loads the obfuscated MK-2
|
|
89
|
-
const MK2Module = require('../engine-mk2/mk2-core');
|
|
90
|
-
const FafEngineMK2 = MK2Module.default || MK2Module.FafEngineMK2;
|
|
91
|
-
const licenseKey = license_controller_1.licenseController.getLicense().key;
|
|
92
|
-
const mk2Instance = new FafEngineMK2(licenseKey);
|
|
93
|
-
return {
|
|
94
|
-
name: 'FAF Engine MK-2',
|
|
95
|
-
version: '2.0.0',
|
|
96
|
-
async analyzeProject(path) {
|
|
97
|
-
return await mk2Instance.analyzeProject(path);
|
|
98
|
-
},
|
|
99
|
-
async calculateScore(data) {
|
|
100
|
-
const result = await mk2Instance.calculateScore(data);
|
|
101
|
-
const scoreLimit = license_controller_1.licenseController.getScoreLimit();
|
|
102
|
-
// Apply license cap
|
|
103
|
-
if (result.finalScore > scoreLimit) {
|
|
104
|
-
result.finalScore = scoreLimit;
|
|
105
|
-
result.capped = true;
|
|
106
|
-
result.cappedBy = 'license';
|
|
107
|
-
}
|
|
108
|
-
return result;
|
|
109
|
-
}
|
|
110
|
-
};
|
|
111
|
-
}
|
|
112
|
-
catch (error) {
|
|
113
|
-
console.warn('MK-2 unavailable, falling back to MK-1');
|
|
114
|
-
return this.loadMK1();
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
getFallbackEngine() {
|
|
118
|
-
// Minimal engine when nothing else works
|
|
119
|
-
return {
|
|
120
|
-
name: 'FAF Engine Fallback',
|
|
121
|
-
version: '0.0.1',
|
|
122
|
-
async analyzeProject() {
|
|
123
|
-
return {
|
|
124
|
-
engine: 'fallback',
|
|
125
|
-
error: 'Engine unavailable',
|
|
126
|
-
score: 0
|
|
127
|
-
};
|
|
128
|
-
},
|
|
129
|
-
async calculateScore() {
|
|
130
|
-
return {
|
|
131
|
-
engine: 'fallback',
|
|
132
|
-
score: 0,
|
|
133
|
-
error: 'Engine unavailable'
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
}
|
|
138
|
-
getEngineInfo() {
|
|
139
|
-
if (!this.currentEngine) {
|
|
140
|
-
return { status: 'not loaded' };
|
|
141
|
-
}
|
|
142
|
-
return {
|
|
143
|
-
name: this.currentEngine.name,
|
|
144
|
-
version: this.currentEngine.version,
|
|
145
|
-
license: license_controller_1.licenseController.getLicense().type,
|
|
146
|
-
scoreLimit: license_controller_1.licenseController.getScoreLimit(),
|
|
147
|
-
features: license_controller_1.licenseController.getLicense().features
|
|
148
|
-
};
|
|
149
|
-
}
|
|
150
|
-
async reloadWithNewLicense() {
|
|
151
|
-
this.currentEngine = null;
|
|
152
|
-
return this.loadEngine();
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
exports.engineLoader = EngineLoader.getInstance();
|
|
156
|
-
//# sourceMappingURL=engine-loader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine-loader.js","sourceRoot":"","sources":["../../src/engine/engine-loader.ts"],"names":[],"mappings":"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"}
|
package/dist/engine-bridge.d.ts
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 🚀 faf-engine Integration Bridge
|
|
3
|
-
* DEPRECATED: This was for Mk-1, we now use Mk3 FafCompiler directly
|
|
4
|
-
* Keeping stub for backwards compatibility
|
|
5
|
-
*/
|
|
6
|
-
import { FafCompiler } from './compiler/faf-compiler';
|
|
7
|
-
export type FafEngine = any;
|
|
8
|
-
export type FafData = any;
|
|
9
|
-
export type FafScore = any;
|
|
10
|
-
export type ContextOnDemandResult = any;
|
|
11
|
-
/**
|
|
12
|
-
* Create a CLI-configured engine instance
|
|
13
|
-
* NOW USES Mk3 FafCompiler!
|
|
14
|
-
*/
|
|
15
|
-
export declare function createCLIEngine(projectDir?: string): FafCompiler;
|
|
16
|
-
/**
|
|
17
|
-
* Bridge function for existing CLI score command
|
|
18
|
-
*/
|
|
19
|
-
export declare function scoreWithEngine(fafFilePath: string): Promise<FafScore>;
|
|
20
|
-
/**
|
|
21
|
-
* Bridge function for existing CLI init command
|
|
22
|
-
*/
|
|
23
|
-
export declare function generateWithEngine(projectDir?: string): Promise<ContextOnDemandResult>;
|
|
24
|
-
/**
|
|
25
|
-
* Bridge function for existing CLI validate command
|
|
26
|
-
*/
|
|
27
|
-
export declare function validateWithEngine(fafFilePath: string): Promise<any>;
|
|
28
|
-
/**
|
|
29
|
-
* Compatibility layer for existing CLI functions
|
|
30
|
-
*/
|
|
31
|
-
export declare const EngineBridge: {
|
|
32
|
-
createEngine: typeof createCLIEngine;
|
|
33
|
-
score: typeof scoreWithEngine;
|
|
34
|
-
generate: typeof generateWithEngine;
|
|
35
|
-
validate: typeof validateWithEngine;
|
|
36
|
-
enhance(fafData: FafData, apiKey?: string): Promise<FafData>;
|
|
37
|
-
};
|
|
38
|
-
//# sourceMappingURL=engine-bridge.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine-bridge.d.ts","sourceRoot":"","sources":["../src/engine-bridge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAGtD,MAAM,MAAM,SAAS,GAAG,GAAG,CAAC;AAC5B,MAAM,MAAM,OAAO,GAAG,GAAG,CAAC;AAC1B,MAAM,MAAM,QAAQ,GAAG,GAAG,CAAC;AAC3B,MAAM,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAExC;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,WAAW,CAEhE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAI5E;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAG5F;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,MAAM,gBAI3D;AAED;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;qBAUA,OAAO,WAAW,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAgBnE,CAAC"}
|