faf-cli 2.4.4 → 2.4.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/README.md +12 -3
  2. package/dist/cli.d.ts +1 -1
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +43 -34
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/faf-auth.js +1 -1
  7. package/dist/commands/faf-auth.js.map +1 -1
  8. package/dist/commands/faf-dna.js +1 -1
  9. package/dist/commands/faf-dna.js.map +1 -1
  10. package/dist/commands/faf-log.js +1 -1
  11. package/dist/commands/faf-log.js.map +1 -1
  12. package/dist/commands/faf-recover.js +10 -13
  13. package/dist/commands/faf-recover.js.map +1 -1
  14. package/dist/commands/faf-update.js +1 -1
  15. package/dist/commands/faf-update.js.map +1 -1
  16. package/dist/commands/tsa.d.ts +9 -0
  17. package/dist/commands/tsa.d.ts.map +1 -0
  18. package/dist/commands/tsa.js +60 -0
  19. package/dist/commands/tsa.js.map +1 -0
  20. package/dist/engine-bridge.d.ts +10 -7
  21. package/dist/engine-bridge.d.ts.map +1 -1
  22. package/dist/engine-bridge.js +7 -12
  23. package/dist/engine-bridge.js.map +1 -1
  24. package/dist/engines/art-ansi-renderer.d.ts +335 -0
  25. package/dist/engines/art-ansi-renderer.d.ts.map +1 -0
  26. package/dist/engines/art-ansi-renderer.js +294 -0
  27. package/dist/engines/art-ansi-renderer.js.map +1 -0
  28. package/dist/engines/dependency-tsa.d.ts +89 -0
  29. package/dist/engines/dependency-tsa.d.ts.map +1 -0
  30. package/dist/engines/dependency-tsa.js +361 -0
  31. package/dist/engines/dependency-tsa.js.map +1 -0
  32. package/dist/fix-once/colors.d.ts +36 -14
  33. package/dist/fix-once/colors.d.ts.map +1 -1
  34. package/dist/fix-once/colors.js +133 -42
  35. package/dist/fix-once/colors.js.map +1 -1
  36. package/dist/fix-once/commander.d.ts +18 -0
  37. package/dist/fix-once/commander.d.ts.map +1 -0
  38. package/dist/fix-once/commander.js +25 -0
  39. package/dist/fix-once/commander.js.map +1 -0
  40. package/dist/fix-once/yaml.d.ts +55 -0
  41. package/dist/fix-once/yaml.d.ts.map +1 -0
  42. package/dist/fix-once/yaml.js +94 -0
  43. package/dist/fix-once/yaml.js.map +1 -0
  44. package/dist/utils/file-utils.d.ts.map +1 -1
  45. package/dist/utils/file-utils.js +4 -9
  46. package/dist/utils/file-utils.js.map +1 -1
  47. package/dist/utils/native-cli-parser.d.ts +148 -0
  48. package/dist/utils/native-cli-parser.d.ts.map +1 -0
  49. package/dist/utils/native-cli-parser.js +442 -0
  50. package/dist/utils/native-cli-parser.js.map +1 -0
  51. package/dist/utils/native-file-finder.d.ts +116 -0
  52. package/dist/utils/native-file-finder.d.ts.map +1 -0
  53. package/dist/utils/native-file-finder.js +211 -0
  54. package/dist/utils/native-file-finder.js.map +1 -0
  55. package/dist/utils/turbo-cat.d.ts.map +1 -1
  56. package/dist/utils/turbo-cat.js +7 -11
  57. package/dist/utils/turbo-cat.js.map +1 -1
  58. package/package.json +3 -7
@@ -0,0 +1,294 @@
1
+ "use strict";
2
+ /**
3
+ * 🎨 .art ANSI Renderer Engine
4
+ * Renders ASCII art with ANSI colors for UI mockups
5
+ * Foundation for .art → UI compilation
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ArtRenderer = exports.BOX_CHARS = exports.UI_THEMES = exports.ART_ANSI = void 0;
9
+ /**
10
+ * ANSI Color Palette for .art files
11
+ * Extended 256-color support for rich UI mockups
12
+ */
13
+ exports.ART_ANSI = {
14
+ // Reset
15
+ reset: '\x1b[0m',
16
+ clear: '\x1b[2J\x1b[H', // Clear screen and home cursor
17
+ // Text Styles
18
+ bold: '\x1b[1m',
19
+ dim: '\x1b[2m',
20
+ italic: '\x1b[3m',
21
+ underline: '\x1b[4m',
22
+ blink: '\x1b[5m',
23
+ reverse: '\x1b[7m',
24
+ hidden: '\x1b[8m',
25
+ strikethrough: '\x1b[9m',
26
+ // Standard Colors (30-37)
27
+ black: '\x1b[30m',
28
+ red: '\x1b[31m',
29
+ green: '\x1b[32m',
30
+ yellow: '\x1b[33m',
31
+ blue: '\x1b[34m',
32
+ magenta: '\x1b[35m',
33
+ cyan: '\x1b[36m',
34
+ white: '\x1b[37m',
35
+ // Bright Colors (90-97)
36
+ gray: '\x1b[90m',
37
+ brightRed: '\x1b[91m',
38
+ brightGreen: '\x1b[92m',
39
+ brightYellow: '\x1b[93m',
40
+ brightBlue: '\x1b[94m',
41
+ brightMagenta: '\x1b[95m',
42
+ brightCyan: '\x1b[96m',
43
+ brightWhite: '\x1b[97m',
44
+ // Background Colors (40-47)
45
+ bgBlack: '\x1b[40m',
46
+ bgRed: '\x1b[41m',
47
+ bgGreen: '\x1b[42m',
48
+ bgYellow: '\x1b[43m',
49
+ bgBlue: '\x1b[44m',
50
+ bgMagenta: '\x1b[45m',
51
+ bgCyan: '\x1b[46m',
52
+ bgWhite: '\x1b[47m',
53
+ // Bright Background Colors (100-107)
54
+ bgGray: '\x1b[100m',
55
+ bgBrightRed: '\x1b[101m',
56
+ bgBrightGreen: '\x1b[102m',
57
+ bgBrightYellow: '\x1b[103m',
58
+ bgBrightBlue: '\x1b[104m',
59
+ bgBrightMagenta: '\x1b[105m',
60
+ bgBrightCyan: '\x1b[106m',
61
+ bgBrightWhite: '\x1b[107m',
62
+ // Cursor Movement
63
+ up: (n = 1) => `\x1b[${n}A`,
64
+ down: (n = 1) => `\x1b[${n}B`,
65
+ forward: (n = 1) => `\x1b[${n}C`,
66
+ back: (n = 1) => `\x1b[${n}D`,
67
+ nextLine: (n = 1) => `\x1b[${n}E`,
68
+ prevLine: (n = 1) => `\x1b[${n}F`,
69
+ column: (n) => `\x1b[${n}G`,
70
+ position: (row, col) => `\x1b[${row};${col}H`,
71
+ // 256 Color Mode
72
+ color256: (n) => `\x1b[38;5;${n}m`,
73
+ bg256: (n) => `\x1b[48;5;${n}m`,
74
+ // RGB True Color (24-bit)
75
+ rgb: (r, g, b) => `\x1b[38;2;${r};${g};${b}m`,
76
+ bgRgb: (r, g, b) => `\x1b[48;2;${r};${g};${b}m`,
77
+ };
78
+ /**
79
+ * UI Component Color Schemes
80
+ */
81
+ exports.UI_THEMES = {
82
+ // FAF Brand Colors
83
+ faf: {
84
+ primary: exports.ART_ANSI.cyan,
85
+ secondary: exports.ART_ANSI.color256(208), // Orange
86
+ success: exports.ART_ANSI.green,
87
+ warning: exports.ART_ANSI.yellow,
88
+ error: exports.ART_ANSI.red,
89
+ info: exports.ART_ANSI.blue,
90
+ border: exports.ART_ANSI.cyan,
91
+ text: exports.ART_ANSI.white,
92
+ muted: exports.ART_ANSI.gray,
93
+ },
94
+ // Dark Mode Theme
95
+ dark: {
96
+ primary: exports.ART_ANSI.brightCyan,
97
+ secondary: exports.ART_ANSI.brightMagenta,
98
+ background: exports.ART_ANSI.bgBlack,
99
+ foreground: exports.ART_ANSI.brightWhite,
100
+ border: exports.ART_ANSI.gray,
101
+ },
102
+ // Light Mode Theme
103
+ light: {
104
+ primary: exports.ART_ANSI.blue,
105
+ secondary: exports.ART_ANSI.magenta,
106
+ background: exports.ART_ANSI.bgWhite,
107
+ foreground: exports.ART_ANSI.black,
108
+ border: exports.ART_ANSI.gray,
109
+ },
110
+ };
111
+ /**
112
+ * Box Drawing Characters for .art files
113
+ */
114
+ exports.BOX_CHARS = {
115
+ // Single Line
116
+ single: {
117
+ horizontal: '─',
118
+ vertical: '│',
119
+ topLeft: '┌',
120
+ topRight: '┐',
121
+ bottomLeft: '└',
122
+ bottomRight: '┘',
123
+ cross: '┼',
124
+ teeDown: '┬',
125
+ teeUp: '┴',
126
+ teeRight: '├',
127
+ teeLeft: '┤',
128
+ },
129
+ // Double Line
130
+ double: {
131
+ horizontal: '═',
132
+ vertical: '║',
133
+ topLeft: '╔',
134
+ topRight: '╗',
135
+ bottomLeft: '╚',
136
+ bottomRight: '╝',
137
+ cross: '╬',
138
+ teeDown: '╦',
139
+ teeUp: '╩',
140
+ teeRight: '╠',
141
+ teeLeft: '╣',
142
+ },
143
+ // Rounded
144
+ rounded: {
145
+ topLeft: '╭',
146
+ topRight: '╮',
147
+ bottomLeft: '╰',
148
+ bottomRight: '╯',
149
+ },
150
+ // Block Elements
151
+ blocks: {
152
+ full: '█',
153
+ upper: '▀',
154
+ lower: '▄',
155
+ left: '▌',
156
+ right: '▐',
157
+ light: '░',
158
+ medium: '▒',
159
+ dark: '▓',
160
+ },
161
+ };
162
+ /**
163
+ * Render .art syntax to ANSI output
164
+ */
165
+ class ArtRenderer {
166
+ theme = exports.UI_THEMES.faf;
167
+ /**
168
+ * Parse .art color tags and convert to ANSI
169
+ * @example [red]Text[/red] → \x1b[31mText\x1b[0m
170
+ */
171
+ parseColorTags(text) {
172
+ return text
173
+ .replace(/\[red\]/g, exports.ART_ANSI.red)
174
+ .replace(/\[green\]/g, exports.ART_ANSI.green)
175
+ .replace(/\[blue\]/g, exports.ART_ANSI.blue)
176
+ .replace(/\[cyan\]/g, exports.ART_ANSI.cyan)
177
+ .replace(/\[yellow\]/g, exports.ART_ANSI.yellow)
178
+ .replace(/\[orange\]/g, exports.ART_ANSI.color256(208))
179
+ .replace(/\[bold\]/g, exports.ART_ANSI.bold)
180
+ .replace(/\[dim\]/g, exports.ART_ANSI.dim)
181
+ .replace(/\[\/\w+\]/g, exports.ART_ANSI.reset);
182
+ }
183
+ /**
184
+ * Draw a box with ANSI colors
185
+ */
186
+ drawBox(width, height, style = 'single') {
187
+ const box = exports.BOX_CHARS[style];
188
+ const lines = [];
189
+ // Top border
190
+ lines.push(this.theme.border +
191
+ box.topLeft +
192
+ box.horizontal.repeat(width - 2) +
193
+ box.topRight +
194
+ exports.ART_ANSI.reset);
195
+ // Middle lines
196
+ for (let i = 0; i < height - 2; i++) {
197
+ lines.push(this.theme.border +
198
+ box.vertical +
199
+ ' '.repeat(width - 2) +
200
+ box.vertical +
201
+ exports.ART_ANSI.reset);
202
+ }
203
+ // Bottom border
204
+ lines.push(this.theme.border +
205
+ box.bottomLeft +
206
+ box.horizontal.repeat(width - 2) +
207
+ box.bottomRight +
208
+ exports.ART_ANSI.reset);
209
+ return lines.join('\n');
210
+ }
211
+ /**
212
+ * Create a progress bar with ANSI colors
213
+ */
214
+ progressBar(percent, width = 20) {
215
+ const filled = Math.floor((percent / 100) * width);
216
+ const empty = width - filled;
217
+ return (exports.ART_ANSI.green +
218
+ exports.BOX_CHARS.blocks.full.repeat(filled) +
219
+ exports.ART_ANSI.gray +
220
+ exports.BOX_CHARS.blocks.light.repeat(empty) +
221
+ exports.ART_ANSI.reset);
222
+ }
223
+ /**
224
+ * Render a button component
225
+ */
226
+ button(text, selected = false) {
227
+ const padding = 2;
228
+ const width = text.length + (padding * 2);
229
+ if (selected) {
230
+ return (exports.ART_ANSI.bgBlue + exports.ART_ANSI.brightWhite + exports.ART_ANSI.bold +
231
+ '[' + ' '.repeat(padding) + text + ' '.repeat(padding) + ']' +
232
+ exports.ART_ANSI.reset);
233
+ }
234
+ else {
235
+ return (this.theme.primary +
236
+ '[' + ' '.repeat(padding) + text + ' '.repeat(padding) + ']' +
237
+ exports.ART_ANSI.reset);
238
+ }
239
+ }
240
+ /**
241
+ * Create a gradient effect (256 color mode)
242
+ */
243
+ gradient(text, startColor, endColor) {
244
+ const chars = text.split('');
245
+ const steps = chars.length;
246
+ const colorStep = (endColor - startColor) / steps;
247
+ return chars.map((char, i) => {
248
+ const color = Math.round(startColor + (colorStep * i));
249
+ return exports.ART_ANSI.color256(color) + char;
250
+ }).join('') + exports.ART_ANSI.reset;
251
+ }
252
+ }
253
+ exports.ArtRenderer = ArtRenderer;
254
+ /**
255
+ * Example .art file structure (for future implementation)
256
+ *
257
+ * @art-file dashboard.art
258
+ * ```
259
+ * @theme: faf
260
+ * @size: 80x24
261
+ *
262
+ * [cyan]┌──────────────────────────────────┐[/cyan]
263
+ * [cyan]│[/cyan] [bold]Dashboard[/bold] [button]Settings[/button] [cyan]│[/cyan]
264
+ * [cyan]├──────────────────────────────────┤[/cyan]
265
+ * [cyan]│[/cyan] CPU: [progress:75] [cyan]│[/cyan]
266
+ * [cyan]│[/cyan] RAM: [progress:45] [cyan]│[/cyan]
267
+ * [cyan]│[/cyan] Disk: [progress:90] [cyan]│[/cyan]
268
+ * [cyan]└──────────────────────────────────┘[/cyan]
269
+ * ```
270
+ *
271
+ * This would compile to a full React/Vue/Svelte component!
272
+ */
273
+ /**
274
+ * Export for use in .art compiler
275
+ */
276
+ exports.default = {
277
+ ART_ANSI: exports.ART_ANSI,
278
+ UI_THEMES: exports.UI_THEMES,
279
+ BOX_CHARS: exports.BOX_CHARS,
280
+ ArtRenderer,
281
+ };
282
+ /**
283
+ * FUTURE: .art → Component Compiler
284
+ *
285
+ * 1. Parse .art file
286
+ * 2. Extract layout from ASCII art
287
+ * 3. Apply ANSI colors for preview
288
+ * 4. Generate component code (React/Vue/Svelte)
289
+ * 5. Apply CSS from ANSI color mappings
290
+ *
291
+ * The ANSI codes become the bridge between
292
+ * ASCII mockups and real UI components!
293
+ */
294
+ //# sourceMappingURL=art-ansi-renderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"art-ansi-renderer.js","sourceRoot":"","sources":["../../src/engines/art-ansi-renderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * 🛂 FAF TSA - Dependency Intelligence
3
+ * Context enrichment through dependency analysis
4
+ *
5
+ * "We're INSPECTORS, not trash collectors"
6
+ * We ignore the trash and focus on the important stuff
7
+ * Understanding your project's story through its dependencies
8
+ * NEVER delete - just provide intelligence about what matters
9
+ */
10
+ export interface DependencyInspection {
11
+ package: string;
12
+ version: string;
13
+ status: 'CORE' | 'ACTIVE' | 'DORMANT' | 'LEGACY';
14
+ usage: {
15
+ importCount: number;
16
+ fileCount: number;
17
+ locations: string[];
18
+ };
19
+ intelligence: {
20
+ category?: string;
21
+ purpose?: string;
22
+ alternatives?: string[];
23
+ bloatScore?: number;
24
+ pattern?: string;
25
+ };
26
+ insight: string;
27
+ }
28
+ export interface TSAReport {
29
+ totalPackages: number;
30
+ core: number;
31
+ active: number;
32
+ dormant: number;
33
+ legacy: number;
34
+ patterns: Record<string, string[]>;
35
+ contextScore: number;
36
+ insights: string[];
37
+ inspections: DependencyInspection[];
38
+ }
39
+ export declare class DependencyTSA {
40
+ private projectRoot;
41
+ private packageJson;
42
+ private inspectionResults;
43
+ constructor(projectRoot?: string);
44
+ /**
45
+ * 🔍 Full TSA Inspection
46
+ */
47
+ inspect(): Promise<TSAReport>;
48
+ /**
49
+ * 🔎 Inspect individual package
50
+ */
51
+ private inspectPackage;
52
+ /**
53
+ * 📊 Analyze actual usage in codebase
54
+ */
55
+ private analyzeUsage;
56
+ /**
57
+ * 🕵️ Gather intelligence about package
58
+ */
59
+ private gatherIntelligence;
60
+ /**
61
+ * 🔍 Detect duplicate functionality
62
+ */
63
+ private detectDuplicates;
64
+ /**
65
+ * 💡 Find known alternatives
66
+ */
67
+ private findAlternatives;
68
+ /**
69
+ * 🔍 Check if package is duplicate
70
+ */
71
+ private isDuplicate;
72
+ /**
73
+ * 📊 Get usage pattern description
74
+ */
75
+ private getUsagePattern;
76
+ /**
77
+ * 🏷️ Get package category
78
+ */
79
+ private getPackageCategory;
80
+ /**
81
+ * 📋 Generate final TSA report
82
+ */
83
+ private generateReport;
84
+ /**
85
+ * 📊 Display TSA Report
86
+ */
87
+ static displayReport(report: TSAReport): void;
88
+ }
89
+ //# sourceMappingURL=dependency-tsa.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-tsa.d.ts","sourceRoot":"","sources":["../../src/engines/dependency-tsa.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAOH,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,CAAC;IACjD,KAAK,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,YAAY,EAAE;QACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,oBAAoB,EAAE,CAAC;CACrC;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,iBAAiB,CAA8B;gBAE3C,WAAW,GAAE,MAAsB;IAW/C;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,SAAS,CAAC;IAsBnC;;OAEG;YACW,cAAc;IAwC5B;;OAEG;YACW,YAAY;IA4C1B;;OAEG;YACW,kBAAkB;IAsBhC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA4BxB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAkBnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmB1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAuDtB;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;CA0C9C"}