@fnd-platform/cli 1.0.0-alpha.24 → 1.0.0-alpha.25
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/lib/bin/fnd.js +101 -4
- package/lib/bin/fnd.js.map +1 -1
- package/lib/commands/add.js +72 -75
- package/lib/commands/add.js.map +1 -1
- package/lib/commands/build.js +29 -34
- package/lib/commands/build.js.map +1 -1
- package/lib/commands/deploy.d.ts +13 -5
- package/lib/commands/deploy.d.ts.map +1 -1
- package/lib/commands/deploy.js +94 -75
- package/lib/commands/deploy.js.map +1 -1
- package/lib/commands/destroy.js +33 -38
- package/lib/commands/destroy.js.map +1 -1
- package/lib/commands/index.d.ts +1 -0
- package/lib/commands/index.d.ts.map +1 -1
- package/lib/commands/index.js +7 -15
- package/lib/commands/index.js.map +1 -1
- package/lib/commands/new.js +46 -50
- package/lib/commands/new.js.map +1 -1
- package/lib/commands/synth.d.ts +8 -1
- package/lib/commands/synth.d.ts.map +1 -1
- package/lib/commands/synth.js +82 -22
- package/lib/commands/synth.js.map +1 -1
- package/lib/commands/test.d.ts +73 -0
- package/lib/commands/test.d.ts.map +1 -0
- package/lib/commands/test.js +193 -0
- package/lib/commands/test.js.map +1 -0
- package/lib/index.d.ts +11 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +29 -18
- package/lib/index.js.map +1 -1
- package/lib/lib/deploy-utils.d.ts.map +1 -1
- package/lib/lib/deploy-utils.js +73 -72
- package/lib/lib/deploy-utils.js.map +1 -1
- package/lib/lib/infra-generator.js +55 -63
- package/lib/lib/infra-generator.js.map +1 -1
- package/lib/lib/logger.js +23 -29
- package/lib/lib/logger.js.map +1 -1
- package/lib/lib/nx-stats.js +12 -18
- package/lib/lib/nx-stats.js.map +1 -1
- package/lib/lib/project.js +7 -11
- package/lib/lib/project.js.map +1 -1
- package/lib/lib/templates.js +2 -6
- package/lib/lib/templates.js.map +1 -1
- package/lib/lib/timer.js +2 -7
- package/lib/lib/timer.js.map +1 -1
- package/lib/lib/validation.d.ts +135 -0
- package/lib/lib/validation.d.ts.map +1 -0
- package/lib/lib/validation.js +233 -0
- package/lib/lib/validation.js.map +1 -0
- package/lib/tui/App.d.ts +11 -0
- package/lib/tui/App.d.ts.map +1 -0
- package/lib/tui/App.js +98 -0
- package/lib/tui/App.js.map +1 -0
- package/lib/tui/components/branding/AsciiBanner.d.ts +21 -0
- package/lib/tui/components/branding/AsciiBanner.d.ts.map +1 -0
- package/lib/tui/components/branding/AsciiBanner.js +15 -0
- package/lib/tui/components/branding/AsciiBanner.js.map +1 -0
- package/lib/tui/components/branding/index.d.ts +5 -0
- package/lib/tui/components/branding/index.d.ts.map +1 -0
- package/lib/tui/components/branding/index.js +5 -0
- package/lib/tui/components/branding/index.js.map +1 -0
- package/lib/tui/components/feedback/Notification.d.ts +51 -0
- package/lib/tui/components/feedback/Notification.d.ts.map +1 -0
- package/lib/tui/components/feedback/Notification.js +89 -0
- package/lib/tui/components/feedback/Notification.js.map +1 -0
- package/lib/tui/components/feedback/ProgressBar.d.ts +46 -0
- package/lib/tui/components/feedback/ProgressBar.d.ts.map +1 -0
- package/lib/tui/components/feedback/ProgressBar.js +30 -0
- package/lib/tui/components/feedback/ProgressBar.js.map +1 -0
- package/lib/tui/components/feedback/ProgressSteps.d.ts +35 -0
- package/lib/tui/components/feedback/ProgressSteps.d.ts.map +1 -0
- package/lib/tui/components/feedback/ProgressSteps.js +37 -0
- package/lib/tui/components/feedback/ProgressSteps.js.map +1 -0
- package/lib/tui/components/feedback/Spinner.d.ts +18 -0
- package/lib/tui/components/feedback/Spinner.d.ts.map +1 -0
- package/lib/tui/components/feedback/Spinner.js +28 -0
- package/lib/tui/components/feedback/Spinner.js.map +1 -0
- package/lib/tui/components/feedback/index.d.ts +8 -0
- package/lib/tui/components/feedback/index.d.ts.map +1 -0
- package/lib/tui/components/feedback/index.js +8 -0
- package/lib/tui/components/feedback/index.js.map +1 -0
- package/lib/tui/components/index.d.ts +8 -0
- package/lib/tui/components/index.d.ts.map +1 -0
- package/lib/tui/components/index.js +8 -0
- package/lib/tui/components/index.js.map +1 -0
- package/lib/tui/components/input/Checkbox.d.ts +26 -0
- package/lib/tui/components/input/Checkbox.d.ts.map +1 -0
- package/lib/tui/components/input/Checkbox.js +20 -0
- package/lib/tui/components/input/Checkbox.js.map +1 -0
- package/lib/tui/components/input/SelectInput.d.ts +41 -0
- package/lib/tui/components/input/SelectInput.d.ts.map +1 -0
- package/lib/tui/components/input/SelectInput.js +53 -0
- package/lib/tui/components/input/SelectInput.js.map +1 -0
- package/lib/tui/components/input/TextInput.d.ts +30 -0
- package/lib/tui/components/input/TextInput.d.ts.map +1 -0
- package/lib/tui/components/input/TextInput.js +48 -0
- package/lib/tui/components/input/TextInput.js.map +1 -0
- package/lib/tui/components/input/index.d.ts +7 -0
- package/lib/tui/components/input/index.d.ts.map +1 -0
- package/lib/tui/components/input/index.js +7 -0
- package/lib/tui/components/input/index.js.map +1 -0
- package/lib/tui/components/layout/Breadcrumbs.d.ts +11 -0
- package/lib/tui/components/layout/Breadcrumbs.d.ts.map +1 -0
- package/lib/tui/components/layout/Breadcrumbs.js +34 -0
- package/lib/tui/components/layout/Breadcrumbs.js.map +1 -0
- package/lib/tui/components/layout/Footer.d.ts +11 -0
- package/lib/tui/components/layout/Footer.d.ts.map +1 -0
- package/lib/tui/components/layout/Footer.js +20 -0
- package/lib/tui/components/layout/Footer.js.map +1 -0
- package/lib/tui/components/layout/Header.d.ts +21 -0
- package/lib/tui/components/layout/Header.d.ts.map +1 -0
- package/lib/tui/components/layout/Header.js +21 -0
- package/lib/tui/components/layout/Header.js.map +1 -0
- package/lib/tui/components/layout/Screen.d.ts +27 -0
- package/lib/tui/components/layout/Screen.d.ts.map +1 -0
- package/lib/tui/components/layout/Screen.js +11 -0
- package/lib/tui/components/layout/Screen.js.map +1 -0
- package/lib/tui/components/layout/index.d.ts +8 -0
- package/lib/tui/components/layout/index.d.ts.map +1 -0
- package/lib/tui/components/layout/index.js +8 -0
- package/lib/tui/components/layout/index.js.map +1 -0
- package/lib/tui/hooks/index.d.ts +20 -0
- package/lib/tui/hooks/index.d.ts.map +1 -0
- package/lib/tui/hooks/index.js +18 -0
- package/lib/tui/hooks/index.js.map +1 -0
- package/lib/tui/hooks/useAddPackage.d.ts +120 -0
- package/lib/tui/hooks/useAddPackage.d.ts.map +1 -0
- package/lib/tui/hooks/useAddPackage.js +347 -0
- package/lib/tui/hooks/useAddPackage.js.map +1 -0
- package/lib/tui/hooks/useCreateProject.d.ts +66 -0
- package/lib/tui/hooks/useCreateProject.d.ts.map +1 -0
- package/lib/tui/hooks/useCreateProject.js +156 -0
- package/lib/tui/hooks/useCreateProject.js.map +1 -0
- package/lib/tui/hooks/useDeploy.d.ts +93 -0
- package/lib/tui/hooks/useDeploy.d.ts.map +1 -0
- package/lib/tui/hooks/useDeploy.js +252 -0
- package/lib/tui/hooks/useDeploy.js.map +1 -0
- package/lib/tui/hooks/useKeyboard.d.ts +66 -0
- package/lib/tui/hooks/useKeyboard.d.ts.map +1 -0
- package/lib/tui/hooks/useKeyboard.js +101 -0
- package/lib/tui/hooks/useKeyboard.js.map +1 -0
- package/lib/tui/hooks/useNavigation.d.ts +33 -0
- package/lib/tui/hooks/useNavigation.d.ts.map +1 -0
- package/lib/tui/hooks/useNavigation.js +27 -0
- package/lib/tui/hooks/useNavigation.js.map +1 -0
- package/lib/tui/hooks/useProject.d.ts +36 -0
- package/lib/tui/hooks/useProject.d.ts.map +1 -0
- package/lib/tui/hooks/useProject.js +47 -0
- package/lib/tui/hooks/useProject.js.map +1 -0
- package/lib/tui/index.d.ts +15 -0
- package/lib/tui/index.d.ts.map +1 -0
- package/lib/tui/index.js +16 -0
- package/lib/tui/index.js.map +1 -0
- package/lib/tui/lib/add-package-tui.d.ts +127 -0
- package/lib/tui/lib/add-package-tui.d.ts.map +1 -0
- package/lib/tui/lib/add-package-tui.js +467 -0
- package/lib/tui/lib/add-package-tui.js.map +1 -0
- package/lib/tui/lib/create-project-tui.d.ts +84 -0
- package/lib/tui/lib/create-project-tui.d.ts.map +1 -0
- package/lib/tui/lib/create-project-tui.js +141 -0
- package/lib/tui/lib/create-project-tui.js.map +1 -0
- package/lib/tui/lib/deploy-tui.d.ts +131 -0
- package/lib/tui/lib/deploy-tui.d.ts.map +1 -0
- package/lib/tui/lib/deploy-tui.js +347 -0
- package/lib/tui/lib/deploy-tui.js.map +1 -0
- package/lib/tui/screens/AddPackageScreen.d.ts +12 -0
- package/lib/tui/screens/AddPackageScreen.d.ts.map +1 -0
- package/lib/tui/screens/AddPackageScreen.js +436 -0
- package/lib/tui/screens/AddPackageScreen.js.map +1 -0
- package/lib/tui/screens/CreateProjectScreen.d.ts +12 -0
- package/lib/tui/screens/CreateProjectScreen.d.ts.map +1 -0
- package/lib/tui/screens/CreateProjectScreen.js +252 -0
- package/lib/tui/screens/CreateProjectScreen.js.map +1 -0
- package/lib/tui/screens/DeployScreen.d.ts +11 -0
- package/lib/tui/screens/DeployScreen.d.ts.map +1 -0
- package/lib/tui/screens/DeployScreen.js +224 -0
- package/lib/tui/screens/DeployScreen.js.map +1 -0
- package/lib/tui/screens/ProjectDashboard.d.ts +11 -0
- package/lib/tui/screens/ProjectDashboard.d.ts.map +1 -0
- package/lib/tui/screens/ProjectDashboard.js +42 -0
- package/lib/tui/screens/ProjectDashboard.js.map +1 -0
- package/lib/tui/screens/WelcomeScreen.d.ts +11 -0
- package/lib/tui/screens/WelcomeScreen.d.ts.map +1 -0
- package/lib/tui/screens/WelcomeScreen.js +26 -0
- package/lib/tui/screens/WelcomeScreen.js.map +1 -0
- package/lib/tui/screens/index.d.ts +9 -0
- package/lib/tui/screens/index.d.ts.map +1 -0
- package/lib/tui/screens/index.js +9 -0
- package/lib/tui/screens/index.js.map +1 -0
- package/lib/tui/services/ConfigService.d.ts +133 -0
- package/lib/tui/services/ConfigService.d.ts.map +1 -0
- package/lib/tui/services/ConfigService.js +221 -0
- package/lib/tui/services/ConfigService.js.map +1 -0
- package/lib/tui/services/ProjectService.d.ts +55 -0
- package/lib/tui/services/ProjectService.d.ts.map +1 -0
- package/lib/tui/services/ProjectService.js +179 -0
- package/lib/tui/services/ProjectService.js.map +1 -0
- package/lib/tui/services/index.d.ts +6 -0
- package/lib/tui/services/index.d.ts.map +1 -0
- package/lib/tui/services/index.js +6 -0
- package/lib/tui/services/index.js.map +1 -0
- package/lib/tui/state/AppContext.d.ts +58 -0
- package/lib/tui/state/AppContext.d.ts.map +1 -0
- package/lib/tui/state/AppContext.js +75 -0
- package/lib/tui/state/AppContext.js.map +1 -0
- package/lib/tui/state/index.d.ts +7 -0
- package/lib/tui/state/index.d.ts.map +1 -0
- package/lib/tui/state/index.js +7 -0
- package/lib/tui/state/index.js.map +1 -0
- package/lib/tui/state/reducer.d.ts +13 -0
- package/lib/tui/state/reducer.d.ts.map +1 -0
- package/lib/tui/state/reducer.js +136 -0
- package/lib/tui/state/reducer.js.map +1 -0
- package/lib/tui/state/types.d.ts +132 -0
- package/lib/tui/state/types.d.ts.map +1 -0
- package/lib/tui/state/types.js +38 -0
- package/lib/tui/state/types.js.map +1 -0
- package/lib/tui/utils/ascii.d.ts +42 -0
- package/lib/tui/utils/ascii.d.ts.map +1 -0
- package/lib/tui/utils/ascii.js +63 -0
- package/lib/tui/utils/ascii.js.map +1 -0
- package/lib/tui/utils/colors.d.ts +65 -0
- package/lib/tui/utils/colors.d.ts.map +1 -0
- package/lib/tui/utils/colors.js +65 -0
- package/lib/tui/utils/colors.js.map +1 -0
- package/lib/tui/utils/index.d.ts +6 -0
- package/lib/tui/utils/index.d.ts.map +1 -0
- package/lib/tui/utils/index.js +6 -0
- package/lib/tui/utils/index.js.map +1 -0
- package/package.json +12 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/tui/state/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* State types for the FND TUI.
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Initial application state.
|
|
6
|
+
*/
|
|
7
|
+
export const initialState = {
|
|
8
|
+
navigation: {
|
|
9
|
+
currentScreen: 'welcome',
|
|
10
|
+
history: [],
|
|
11
|
+
params: undefined,
|
|
12
|
+
},
|
|
13
|
+
project: {
|
|
14
|
+
context: 'unknown',
|
|
15
|
+
rootPath: null,
|
|
16
|
+
name: null,
|
|
17
|
+
packages: [],
|
|
18
|
+
currentStage: null,
|
|
19
|
+
isLoading: true,
|
|
20
|
+
error: null,
|
|
21
|
+
},
|
|
22
|
+
ui: {
|
|
23
|
+
showHelp: false,
|
|
24
|
+
showSettings: false,
|
|
25
|
+
notification: null,
|
|
26
|
+
notificationType: null,
|
|
27
|
+
dimensions: {
|
|
28
|
+
width: process.stdout.columns || 80,
|
|
29
|
+
height: process.stdout.rows || 24,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
preferences: {
|
|
33
|
+
defaultStage: 'dev',
|
|
34
|
+
showBanner: true,
|
|
35
|
+
theme: 'auto',
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/tui/state/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA4GH;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAa;IACpC,UAAU,EAAE;QACV,aAAa,EAAE,SAAS;QACxB,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,SAAS;KAClB;IACD,OAAO,EAAE;QACP,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,EAAE;QACZ,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,IAAI;KACZ;IACD,EAAE,EAAE;QACF,QAAQ,EAAE,KAAK;QACf,YAAY,EAAE,KAAK;QACnB,YAAY,EAAE,IAAI;QAClB,gBAAgB,EAAE,IAAI;QACtB,UAAU,EAAE;YACV,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE;YACnC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;SAClC;KACF;IACD,WAAW,EAAE;QACX,YAAY,EAAE,KAAK;QACnB,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,MAAM;KACd;CACF,CAAC"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ASCII art utilities for the FND TUI.
|
|
3
|
+
*
|
|
4
|
+
* Uses figlet for generating ASCII banners.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Default ASCII banner for FND.
|
|
8
|
+
* Pre-rendered to avoid async issues during render.
|
|
9
|
+
*/
|
|
10
|
+
export declare const FND_BANNER: string;
|
|
11
|
+
/**
|
|
12
|
+
* Compact ASCII banner for smaller displays.
|
|
13
|
+
*/
|
|
14
|
+
export declare const FND_BANNER_SMALL: string;
|
|
15
|
+
/**
|
|
16
|
+
* Available figlet fonts.
|
|
17
|
+
*/
|
|
18
|
+
export type FigletFont = 'Standard' | 'Big' | 'Small' | 'Banner' | 'Slant';
|
|
19
|
+
/**
|
|
20
|
+
* Generates an ASCII banner using figlet.
|
|
21
|
+
*
|
|
22
|
+
* @param text - Text to render
|
|
23
|
+
* @param font - Figlet font to use
|
|
24
|
+
* @returns ASCII art string
|
|
25
|
+
*/
|
|
26
|
+
export declare function generateBanner(text: string, font?: FigletFont): string;
|
|
27
|
+
/**
|
|
28
|
+
* Gets the appropriate banner based on terminal width.
|
|
29
|
+
*
|
|
30
|
+
* @param width - Terminal width
|
|
31
|
+
* @returns ASCII banner string
|
|
32
|
+
*/
|
|
33
|
+
export declare function getBannerForWidth(width: number): string;
|
|
34
|
+
/**
|
|
35
|
+
* Tagline shown below the banner.
|
|
36
|
+
*/
|
|
37
|
+
export declare const TAGLINE = "AWS-Native TypeScript Monorepo Toolkit";
|
|
38
|
+
/**
|
|
39
|
+
* Short description for the TUI.
|
|
40
|
+
*/
|
|
41
|
+
export declare const DESCRIPTION = "Build production-ready full-stack applications in minutes";
|
|
42
|
+
//# sourceMappingURL=ascii.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ascii.d.ts","sourceRoot":"","sources":["../../../src/tui/utils/ascii.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;;GAGG;AACH,eAAO,MAAM,UAAU,QAOf,CAAC;AAET;;GAEG;AACH,eAAO,MAAM,gBAAgB,QAIrB,CAAC;AAET;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3E;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAuB,GAAG,MAAM,CAOlF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,2CAA2C,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,WAAW,8DAA8D,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ASCII art utilities for the FND TUI.
|
|
3
|
+
*
|
|
4
|
+
* Uses figlet for generating ASCII banners.
|
|
5
|
+
*/
|
|
6
|
+
import figlet from 'figlet';
|
|
7
|
+
/**
|
|
8
|
+
* Default ASCII banner for FND.
|
|
9
|
+
* Pre-rendered to avoid async issues during render.
|
|
10
|
+
*/
|
|
11
|
+
export const FND_BANNER = `
|
|
12
|
+
███████╗███╗ ██╗██████╗
|
|
13
|
+
██╔════╝████╗ ██║██╔══██╗
|
|
14
|
+
█████╗ ██╔██╗ ██║██║ ██║
|
|
15
|
+
██╔══╝ ██║╚██╗██║██║ ██║
|
|
16
|
+
██║ ██║ ╚████║██████╔╝
|
|
17
|
+
╚═╝ ╚═╝ ╚═══╝╚═════╝
|
|
18
|
+
`.trim();
|
|
19
|
+
/**
|
|
20
|
+
* Compact ASCII banner for smaller displays.
|
|
21
|
+
*/
|
|
22
|
+
export const FND_BANNER_SMALL = `
|
|
23
|
+
╔═╗╔╗╔╔╦╗
|
|
24
|
+
╠╣ ║║║ ║║
|
|
25
|
+
╚ ╝╚╝═╩╝
|
|
26
|
+
`.trim();
|
|
27
|
+
/**
|
|
28
|
+
* Generates an ASCII banner using figlet.
|
|
29
|
+
*
|
|
30
|
+
* @param text - Text to render
|
|
31
|
+
* @param font - Figlet font to use
|
|
32
|
+
* @returns ASCII art string
|
|
33
|
+
*/
|
|
34
|
+
export function generateBanner(text, font = 'Standard') {
|
|
35
|
+
try {
|
|
36
|
+
return figlet.textSync(text, { font });
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
// Fallback to simple text if font not available
|
|
40
|
+
return text;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Gets the appropriate banner based on terminal width.
|
|
45
|
+
*
|
|
46
|
+
* @param width - Terminal width
|
|
47
|
+
* @returns ASCII banner string
|
|
48
|
+
*/
|
|
49
|
+
export function getBannerForWidth(width) {
|
|
50
|
+
if (width < 40) {
|
|
51
|
+
return FND_BANNER_SMALL;
|
|
52
|
+
}
|
|
53
|
+
return FND_BANNER;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Tagline shown below the banner.
|
|
57
|
+
*/
|
|
58
|
+
export const TAGLINE = 'AWS-Native TypeScript Monorepo Toolkit';
|
|
59
|
+
/**
|
|
60
|
+
* Short description for the TUI.
|
|
61
|
+
*/
|
|
62
|
+
export const DESCRIPTION = 'Build production-ready full-stack applications in minutes';
|
|
63
|
+
//# sourceMappingURL=ascii.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ascii.js","sourceRoot":"","sources":["../../../src/tui/utils/ascii.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B;;;GAGG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;CAOzB,CAAC,IAAI,EAAE,CAAC;AAET;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;CAI/B,CAAC,IAAI,EAAE,CAAC;AAOT;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY,EAAE,OAAmB,UAAU;IACxE,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC7C,IAAI,KAAK,GAAG,EAAE,EAAE,CAAC;QACf,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,wCAAwC,CAAC;AAEhE;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,2DAA2D,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Color palette for the FND TUI.
|
|
3
|
+
*
|
|
4
|
+
* Based on a modern, accessible color scheme that works well
|
|
5
|
+
* in both light and dark terminal themes.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Primary brand colors.
|
|
9
|
+
*/
|
|
10
|
+
export declare const colors: {
|
|
11
|
+
/** Primary brand color - electric blue */
|
|
12
|
+
readonly primary: "#00A3FF";
|
|
13
|
+
/** Secondary brand color - purple */
|
|
14
|
+
readonly secondary: "#A855F7";
|
|
15
|
+
/** Success/positive color - green */
|
|
16
|
+
readonly success: "#22C55E";
|
|
17
|
+
/** Warning color - amber */
|
|
18
|
+
readonly warning: "#F59E0B";
|
|
19
|
+
/** Error/danger color - red */
|
|
20
|
+
readonly error: "#EF4444";
|
|
21
|
+
/** Muted text color - gray */
|
|
22
|
+
readonly muted: "#6B7280";
|
|
23
|
+
/** Accent color - cyan */
|
|
24
|
+
readonly accent: "#06B6D4";
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Semantic text colors.
|
|
28
|
+
*/
|
|
29
|
+
export declare const textColors: {
|
|
30
|
+
/** Primary text */
|
|
31
|
+
readonly primary: "#FFFFFF";
|
|
32
|
+
/** Secondary/muted text */
|
|
33
|
+
readonly secondary: "#9CA3AF";
|
|
34
|
+
/** Dimmed/subtle text */
|
|
35
|
+
readonly dimmed: "#6B7280";
|
|
36
|
+
/** Inverse text (on light backgrounds) */
|
|
37
|
+
readonly inverse: "#111827";
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Status indicator colors.
|
|
41
|
+
*/
|
|
42
|
+
export declare const statusColors: {
|
|
43
|
+
/** Active/running status */
|
|
44
|
+
readonly active: "#22C55E";
|
|
45
|
+
/** Pending/waiting status */
|
|
46
|
+
readonly pending: "#F59E0B";
|
|
47
|
+
/** Error/failed status */
|
|
48
|
+
readonly failed: "#EF4444";
|
|
49
|
+
/** Idle/inactive status */
|
|
50
|
+
readonly idle: "#6B7280";
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Navigation and UI element colors.
|
|
54
|
+
*/
|
|
55
|
+
export declare const uiColors: {
|
|
56
|
+
/** Selected/highlighted item */
|
|
57
|
+
readonly selected: "#00A3FF";
|
|
58
|
+
/** Hover state */
|
|
59
|
+
readonly hover: "#A855F7";
|
|
60
|
+
/** Border color */
|
|
61
|
+
readonly border: "#374151";
|
|
62
|
+
/** Background highlight */
|
|
63
|
+
readonly highlight: "#1F2937";
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=colors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../src/tui/utils/colors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,eAAO,MAAM,MAAM;IACjB,0CAA0C;;IAE1C,qCAAqC;;IAErC,qCAAqC;;IAErC,4BAA4B;;IAE5B,+BAA+B;;IAE/B,8BAA8B;;IAE9B,0BAA0B;;CAElB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,UAAU;IACrB,mBAAmB;;IAEnB,2BAA2B;;IAE3B,yBAAyB;;IAEzB,0CAA0C;;CAElC,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;IACvB,4BAA4B;;IAE5B,6BAA6B;;IAE7B,0BAA0B;;IAE1B,2BAA2B;;CAEnB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,QAAQ;IACnB,gCAAgC;;IAEhC,kBAAkB;;IAElB,mBAAmB;;IAEnB,2BAA2B;;CAEnB,CAAC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Color palette for the FND TUI.
|
|
3
|
+
*
|
|
4
|
+
* Based on a modern, accessible color scheme that works well
|
|
5
|
+
* in both light and dark terminal themes.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Primary brand colors.
|
|
9
|
+
*/
|
|
10
|
+
export const colors = {
|
|
11
|
+
/** Primary brand color - electric blue */
|
|
12
|
+
primary: '#00A3FF',
|
|
13
|
+
/** Secondary brand color - purple */
|
|
14
|
+
secondary: '#A855F7',
|
|
15
|
+
/** Success/positive color - green */
|
|
16
|
+
success: '#22C55E',
|
|
17
|
+
/** Warning color - amber */
|
|
18
|
+
warning: '#F59E0B',
|
|
19
|
+
/** Error/danger color - red */
|
|
20
|
+
error: '#EF4444',
|
|
21
|
+
/** Muted text color - gray */
|
|
22
|
+
muted: '#6B7280',
|
|
23
|
+
/** Accent color - cyan */
|
|
24
|
+
accent: '#06B6D4',
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Semantic text colors.
|
|
28
|
+
*/
|
|
29
|
+
export const textColors = {
|
|
30
|
+
/** Primary text */
|
|
31
|
+
primary: '#FFFFFF',
|
|
32
|
+
/** Secondary/muted text */
|
|
33
|
+
secondary: '#9CA3AF',
|
|
34
|
+
/** Dimmed/subtle text */
|
|
35
|
+
dimmed: '#6B7280',
|
|
36
|
+
/** Inverse text (on light backgrounds) */
|
|
37
|
+
inverse: '#111827',
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Status indicator colors.
|
|
41
|
+
*/
|
|
42
|
+
export const statusColors = {
|
|
43
|
+
/** Active/running status */
|
|
44
|
+
active: colors.success,
|
|
45
|
+
/** Pending/waiting status */
|
|
46
|
+
pending: colors.warning,
|
|
47
|
+
/** Error/failed status */
|
|
48
|
+
failed: colors.error,
|
|
49
|
+
/** Idle/inactive status */
|
|
50
|
+
idle: colors.muted,
|
|
51
|
+
};
|
|
52
|
+
/**
|
|
53
|
+
* Navigation and UI element colors.
|
|
54
|
+
*/
|
|
55
|
+
export const uiColors = {
|
|
56
|
+
/** Selected/highlighted item */
|
|
57
|
+
selected: colors.primary,
|
|
58
|
+
/** Hover state */
|
|
59
|
+
hover: colors.secondary,
|
|
60
|
+
/** Border color */
|
|
61
|
+
border: '#374151',
|
|
62
|
+
/** Background highlight */
|
|
63
|
+
highlight: '#1F2937',
|
|
64
|
+
};
|
|
65
|
+
//# sourceMappingURL=colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.js","sourceRoot":"","sources":["../../../src/tui/utils/colors.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,0CAA0C;IAC1C,OAAO,EAAE,SAAS;IAClB,qCAAqC;IACrC,SAAS,EAAE,SAAS;IACpB,qCAAqC;IACrC,OAAO,EAAE,SAAS;IAClB,4BAA4B;IAC5B,OAAO,EAAE,SAAS;IAClB,+BAA+B;IAC/B,KAAK,EAAE,SAAS;IAChB,8BAA8B;IAC9B,KAAK,EAAE,SAAS;IAChB,0BAA0B;IAC1B,MAAM,EAAE,SAAS;CACT,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,mBAAmB;IACnB,OAAO,EAAE,SAAS;IAClB,2BAA2B;IAC3B,SAAS,EAAE,SAAS;IACpB,yBAAyB;IACzB,MAAM,EAAE,SAAS;IACjB,0CAA0C;IAC1C,OAAO,EAAE,SAAS;CACV,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC,OAAO;IACtB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC,OAAO;IACvB,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC,KAAK;IACpB,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC,KAAK;CACV,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC,OAAO;IACxB,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC,SAAS;IACvB,mBAAmB;IACnB,MAAM,EAAE,SAAS;IACjB,2BAA2B;IAC3B,SAAS,EAAE,SAAS;CACZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tui/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tui/utils/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fnd-platform/cli",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.25",
|
|
4
|
+
"type": "module",
|
|
4
5
|
"description": "CLI tool for fnd-platform monorepo scaffolding",
|
|
5
6
|
"main": "lib/index.js",
|
|
6
7
|
"types": "lib/index.d.ts",
|
|
@@ -13,14 +14,20 @@
|
|
|
13
14
|
"dependencies": {
|
|
14
15
|
"chalk": "^5.3.0",
|
|
15
16
|
"commander": "^12.0.0",
|
|
16
|
-
"
|
|
17
|
+
"figlet": "^1.7.0",
|
|
18
|
+
"ink": "^5.0.1",
|
|
19
|
+
"react": "^18.2.0",
|
|
20
|
+
"@fnd-platform/core": "^1.0.0-alpha.7"
|
|
17
21
|
},
|
|
18
22
|
"devDependencies": {
|
|
23
|
+
"@types/figlet": "^1.5.8",
|
|
19
24
|
"@types/node": "^20.0.0",
|
|
25
|
+
"@types/react": "^18.2.0",
|
|
20
26
|
"@typescript-eslint/eslint-plugin": "^7.18.0",
|
|
21
27
|
"@typescript-eslint/parser": "^7.18.0",
|
|
22
28
|
"@vitest/coverage-v8": "^1.6.0",
|
|
23
29
|
"eslint": "^8.57.0",
|
|
30
|
+
"ink-testing-library": "^4.0.0",
|
|
24
31
|
"typescript": "^5.6.3",
|
|
25
32
|
"vitest": "^1.6.0"
|
|
26
33
|
},
|
|
@@ -49,6 +56,8 @@
|
|
|
49
56
|
"test:coverage": "vitest run --coverage",
|
|
50
57
|
"e2e": "vitest run --config vitest.config.e2e.ts",
|
|
51
58
|
"e2e:watch": "vitest --config vitest.config.e2e.ts",
|
|
52
|
-
"lint": "eslint src/ test/"
|
|
59
|
+
"lint": "eslint src/ test/",
|
|
60
|
+
"dev": "node lib/bin/fnd.js",
|
|
61
|
+
"dev:tui": "node lib/bin/fnd.js --interactive"
|
|
53
62
|
}
|
|
54
63
|
}
|