@revealui/cli 0.0.1-pre.1 → 0.3.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.
Files changed (114) hide show
  1. package/LICENSE +22 -202
  2. package/README.md +194 -0
  3. package/bin/create-revealui.js +6 -0
  4. package/bin/revealui.js +6 -0
  5. package/dist/cli.d.ts +16 -0
  6. package/dist/cli.js +1801 -0
  7. package/dist/cli.js.map +1 -0
  8. package/dist/index.d.ts +1 -2
  9. package/dist/index.js +1795 -124
  10. package/dist/index.js.map +1 -0
  11. package/package.json +49 -42
  12. package/templates/basic-blog/.env.example +36 -0
  13. package/templates/basic-blog/_gitignore +26 -0
  14. package/templates/basic-blog/next.config.mjs +10 -0
  15. package/templates/basic-blog/package.json +36 -0
  16. package/templates/basic-blog/postcss.config.mjs +5 -0
  17. package/templates/basic-blog/revealui.config.ts +19 -0
  18. package/templates/basic-blog/src/app/globals.css +6 -0
  19. package/templates/basic-blog/src/app/layout.tsx +15 -0
  20. package/templates/basic-blog/src/app/page.tsx +57 -0
  21. package/templates/basic-blog/src/app/posts/[slug]/page.tsx +66 -0
  22. package/templates/basic-blog/src/app/posts/page.tsx +61 -0
  23. package/templates/basic-blog/src/collections/Posts.ts +42 -0
  24. package/templates/basic-blog/src/seed.ts +73 -0
  25. package/templates/basic-blog/tsconfig.json +11 -0
  26. package/templates/e-commerce/.env.example +36 -0
  27. package/templates/e-commerce/_gitignore +26 -0
  28. package/templates/e-commerce/next.config.mjs +10 -0
  29. package/templates/e-commerce/package.json +36 -0
  30. package/templates/e-commerce/postcss.config.mjs +5 -0
  31. package/templates/e-commerce/revealui.config.ts +20 -0
  32. package/templates/e-commerce/src/app/globals.css +6 -0
  33. package/templates/e-commerce/src/app/layout.tsx +15 -0
  34. package/templates/e-commerce/src/app/page.tsx +82 -0
  35. package/templates/e-commerce/src/app/products/[slug]/page.tsx +80 -0
  36. package/templates/e-commerce/src/app/products/page.tsx +72 -0
  37. package/templates/e-commerce/src/collections/Orders.ts +63 -0
  38. package/templates/e-commerce/src/collections/Products.ts +50 -0
  39. package/templates/e-commerce/src/seed.ts +72 -0
  40. package/templates/e-commerce/tsconfig.json +11 -0
  41. package/templates/portfolio/.env.example +36 -0
  42. package/templates/portfolio/_gitignore +26 -0
  43. package/templates/portfolio/next.config.mjs +10 -0
  44. package/templates/portfolio/package.json +36 -0
  45. package/templates/portfolio/postcss.config.mjs +5 -0
  46. package/templates/portfolio/revealui.config.ts +19 -0
  47. package/templates/portfolio/src/app/globals.css +6 -0
  48. package/templates/portfolio/src/app/layout.tsx +15 -0
  49. package/templates/portfolio/src/app/page.tsx +60 -0
  50. package/templates/portfolio/src/app/projects/[slug]/page.tsx +95 -0
  51. package/templates/portfolio/src/app/projects/page.tsx +85 -0
  52. package/templates/portfolio/src/collections/Projects.ts +49 -0
  53. package/templates/portfolio/src/seed.ts +73 -0
  54. package/templates/portfolio/tsconfig.json +11 -0
  55. package/templates/starter/.env.example +36 -0
  56. package/templates/starter/_gitignore +26 -0
  57. package/templates/starter/next.config.mjs +10 -0
  58. package/templates/starter/package.json +36 -0
  59. package/templates/starter/postcss.config.mjs +5 -0
  60. package/templates/starter/revealui.config.ts +18 -0
  61. package/templates/starter/src/app/globals.css +6 -0
  62. package/templates/starter/src/app/layout.tsx +15 -0
  63. package/templates/starter/src/app/page.tsx +18 -0
  64. package/templates/starter/src/seed.ts +40 -0
  65. package/templates/starter/tsconfig.json +11 -0
  66. package/dist/commands/add.d.ts +0 -28
  67. package/dist/commands/add.d.ts.map +0 -1
  68. package/dist/commands/add.js +0 -115
  69. package/dist/commands/check.d.ts +0 -7
  70. package/dist/commands/check.d.ts.map +0 -1
  71. package/dist/commands/check.js +0 -34
  72. package/dist/commands/doctor/checks/build.d.ts +0 -10
  73. package/dist/commands/doctor/checks/build.d.ts.map +0 -1
  74. package/dist/commands/doctor/checks/build.js +0 -74
  75. package/dist/commands/doctor/checks/config.d.ts +0 -14
  76. package/dist/commands/doctor/checks/config.d.ts.map +0 -1
  77. package/dist/commands/doctor/checks/config.js +0 -116
  78. package/dist/commands/doctor/checks/dependencies.d.ts +0 -14
  79. package/dist/commands/doctor/checks/dependencies.d.ts.map +0 -1
  80. package/dist/commands/doctor/checks/dependencies.js +0 -126
  81. package/dist/commands/doctor/checks/practices.d.ts +0 -14
  82. package/dist/commands/doctor/checks/practices.d.ts.map +0 -1
  83. package/dist/commands/doctor/checks/practices.js +0 -142
  84. package/dist/commands/doctor/checks/structure.d.ts +0 -14
  85. package/dist/commands/doctor/checks/structure.d.ts.map +0 -1
  86. package/dist/commands/doctor/checks/structure.js +0 -107
  87. package/dist/commands/doctor/fixes/index.d.ts +0 -26
  88. package/dist/commands/doctor/fixes/index.d.ts.map +0 -1
  89. package/dist/commands/doctor/fixes/index.js +0 -108
  90. package/dist/commands/doctor/index.d.ts +0 -11
  91. package/dist/commands/doctor/index.d.ts.map +0 -1
  92. package/dist/commands/doctor/index.js +0 -37
  93. package/dist/commands/doctor/print.d.ts +0 -6
  94. package/dist/commands/doctor/print.d.ts.map +0 -1
  95. package/dist/commands/doctor/print.js +0 -31
  96. package/dist/commands/doctor/types.d.ts +0 -16
  97. package/dist/commands/doctor/types.d.ts.map +0 -1
  98. package/dist/commands/doctor/types.js +0 -1
  99. package/dist/commands/fix.d.ts +0 -5
  100. package/dist/commands/fix.d.ts.map +0 -1
  101. package/dist/commands/fix.js +0 -129
  102. package/dist/commands/init.d.ts +0 -35
  103. package/dist/commands/init.d.ts.map +0 -1
  104. package/dist/commands/init.js +0 -104
  105. package/dist/commands/upgrade.d.ts +0 -9
  106. package/dist/commands/upgrade.d.ts.map +0 -1
  107. package/dist/commands/upgrade.js +0 -85
  108. package/dist/index.d.ts.map +0 -1
  109. package/dist/onLoad.d.ts +0 -3
  110. package/dist/onLoad.d.ts.map +0 -1
  111. package/dist/onLoad.js +0 -5
  112. package/dist/utils.d.ts +0 -3
  113. package/dist/utils.d.ts.map +0 -1
  114. package/dist/utils.js +0 -6
@@ -1,11 +0,0 @@
1
- import type { DiagnosticResult } from "./types.js";
2
- import { printDiagnostics } from "./print.js";
3
- /**
4
- * Runs comprehensive health diagnostics on the RevealUI project
5
- */
6
- export declare function runDiagnostics(): Promise<DiagnosticResult[]>;
7
- /**
8
- * Print diagnostic results to console
9
- */
10
- export { printDiagnostics };
11
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor/index.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CA6BlE;AAED;;GAEG;AACH,OAAO,EAAE,gBAAgB,EAAE,CAAC"}
@@ -1,37 +0,0 @@
1
- import * as configChecks from "./checks/config.js";
2
- import * as dependencyChecks from "./checks/dependencies.js";
3
- import * as structureChecks from "./checks/structure.js";
4
- import * as buildChecks from "./checks/build.js";
5
- import * as practiceChecks from "./checks/practices.js";
6
- import { printDiagnostics } from "./print.js";
7
- /**
8
- * Runs comprehensive health diagnostics on the RevealUI project
9
- */
10
- export async function runDiagnostics() {
11
- const cwd = process.cwd();
12
- const results = [];
13
- // Configuration checks
14
- results.push(...(await configChecks.checkRevealConfig(cwd)));
15
- results.push(...(await configChecks.checkTypeScriptConfig(cwd)));
16
- results.push(...(await configChecks.checkEnvironmentVariables(cwd)));
17
- // Dependency checks
18
- results.push(...(await dependencyChecks.checkRevealPackage(cwd)));
19
- results.push(...(await dependencyChecks.checkRequiredDependencies(cwd)));
20
- results.push(...(await dependencyChecks.checkOutdatedPackages(cwd)));
21
- // Structure checks
22
- results.push(...(await structureChecks.checkPagesDirectory(cwd)));
23
- results.push(...(await structureChecks.checkComponentsDirectory(cwd)));
24
- results.push(...(await structureChecks.checkPublicDirectory(cwd)));
25
- // Build checks
26
- results.push(...(await buildChecks.checkTypeScriptCompilation(cwd)));
27
- results.push(...(await buildChecks.checkBuildProcess(cwd)));
28
- // Best practices checks
29
- results.push(...(await practiceChecks.checkGitignore(cwd)));
30
- results.push(...(await practiceChecks.checkEnvFilesNotCommitted(cwd)));
31
- results.push(...(await practiceChecks.checkSecurityPractices(cwd)));
32
- return results;
33
- }
34
- /**
35
- * Print diagnostic results to console
36
- */
37
- export { printDiagnostics };
@@ -1,6 +0,0 @@
1
- import type { DiagnosticResult } from "./types.js";
2
- /**
3
- * Prints diagnostic results to the console
4
- */
5
- export declare function printDiagnostics(results: DiagnosticResult[]): void;
6
- //# sourceMappingURL=print.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"print.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor/print.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAoClE"}
@@ -1,31 +0,0 @@
1
- import pc from "@brillout/picocolors";
2
- /**
3
- * Prints diagnostic results to the console
4
- */
5
- export function printDiagnostics(results) {
6
- console.log(pc.cyan("\nRevealUI Project Diagnostics\n"));
7
- console.log(pc.gray("─".repeat(50) + "\n"));
8
- for (const result of results) {
9
- const icon = result.status === "pass"
10
- ? pc.green("āœ“")
11
- : result.status === "warn"
12
- ? pc.yellow("⚠")
13
- : pc.red("āœ—");
14
- console.log(`${icon} ${pc.bold(result.check)}`);
15
- console.log(` ${result.message}`);
16
- if (result.suggestion) {
17
- console.log(pc.gray(` → ${result.suggestion}`));
18
- }
19
- console.log();
20
- }
21
- const passCount = results.filter((r) => r.status === "pass").length;
22
- const warnCount = results.filter((r) => r.status === "warn").length;
23
- const failCount = results.filter((r) => r.status === "fail").length;
24
- console.log(pc.gray("─".repeat(50)));
25
- console.log(`Summary: ${pc.green(`${passCount} passed`)}, ${pc.yellow(`${warnCount} warnings`)}, ${pc.red(`${failCount} failed`)}`);
26
- console.log();
27
- if (failCount > 0) {
28
- console.log(pc.yellow("šŸ’” Tip: Run 'reveal fix' to automatically fix some issues"));
29
- console.log();
30
- }
31
- }
@@ -1,16 +0,0 @@
1
- /**
2
- * Diagnostic result from health check
3
- */
4
- export interface DiagnosticResult {
5
- /** Name of the diagnostic check */
6
- check: string;
7
- /** Status of the check */
8
- status: "pass" | "warn" | "fail";
9
- /** Diagnostic message */
10
- message: string;
11
- /** Optional suggestion for fixing issues */
12
- suggestion?: string;
13
- /** Optional fix action that can be applied */
14
- fix?: () => Promise<void> | void;
15
- }
16
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/doctor/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IACjC,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8CAA8C;IAC9C,GAAG,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAClC"}
@@ -1 +0,0 @@
1
- export {};
@@ -1,5 +0,0 @@
1
- /**
2
- * Auto-fix command that applies fixes for detected issues
3
- */
4
- export declare function runFix(): Promise<void>;
5
- //# sourceMappingURL=fix.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../src/commands/fix.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAoD5C"}
@@ -1,129 +0,0 @@
1
- import prompts from "prompts";
2
- import pc from "@brillout/picocolors";
3
- import { runDiagnostics } from "./doctor/index.js";
4
- import { applyFixes } from "./doctor/fixes/index.js";
5
- import * as fixes from "./doctor/fixes/index.js";
6
- /**
7
- * Auto-fix command that applies fixes for detected issues
8
- */
9
- export async function runFix() {
10
- console.log(pc.cyan("\nšŸ”§ RevealUI Auto-Fix\n"));
11
- console.log(pc.gray("Running diagnostics...\n"));
12
- // Run diagnostics first
13
- const results = await runDiagnostics();
14
- // Find fixable issues
15
- const fixableResults = results.filter((r) => r.status === "fail" || r.status === "warn");
16
- if (fixableResults.length === 0) {
17
- console.log(pc.green("āœ“ No issues found that need fixing!\n"));
18
- return;
19
- }
20
- // Enhance results with fix functions
21
- const enhancedResults = await enhanceResultsWithFixes(results);
22
- // Show issues that can be fixed
23
- console.log(pc.cyan("Issues found:\n"));
24
- for (const result of fixableResults) {
25
- const icon = result.status === "fail" ? pc.red("āœ—") : pc.yellow("⚠");
26
- console.log(`${icon} ${result.check}`);
27
- console.log(` ${result.message}`);
28
- if (result.suggestion) {
29
- console.log(pc.gray(` → ${result.suggestion}`));
30
- }
31
- }
32
- console.log();
33
- // Ask for confirmation
34
- const response = await prompts({
35
- type: "confirm",
36
- name: "apply",
37
- message: "Apply automatic fixes?",
38
- initial: true,
39
- });
40
- if (!response.apply) {
41
- console.log(pc.yellow("\nFix cancelled."));
42
- return;
43
- }
44
- // Apply fixes
45
- console.log(pc.cyan("\nApplying fixes...\n"));
46
- await applyFixes(enhancedResults);
47
- console.log(pc.green("\nāœ… Fix complete!\n"));
48
- console.log(pc.cyan("Run 'reveal doctor' again to verify all issues are resolved.\n"));
49
- }
50
- /**
51
- * Enhance diagnostic results with fix functions
52
- */
53
- async function enhanceResultsWithFixes(results) {
54
- const cwd = process.cwd();
55
- return results.map((result) => {
56
- // Add fix functions based on check type
57
- if (result.check === "reveal.config.ts exists" && result.status === "fail") {
58
- return {
59
- ...result,
60
- fix: () => fixes.fixMissingRevealConfig(cwd),
61
- };
62
- }
63
- if (result.check === "required dependencies" && result.status === "fail") {
64
- const missingDeps = extractMissingDependencies(result.message);
65
- if (missingDeps.length > 0) {
66
- return {
67
- ...result,
68
- fix: () => fixes.fixMissingDependencies(cwd, missingDeps),
69
- };
70
- }
71
- }
72
- if (result.check === "pages directory" && result.status === "fail") {
73
- return {
74
- ...result,
75
- fix: () => fixes.fixMissingDirectories(cwd, ["src/pages"]),
76
- };
77
- }
78
- if (result.check === "components directory" && result.status === "warn") {
79
- return {
80
- ...result,
81
- fix: () => fixes.fixMissingDirectories(cwd, ["src/components"]),
82
- };
83
- }
84
- if (result.check === "public directory" && result.status === "warn") {
85
- return {
86
- ...result,
87
- fix: () => fixes.fixMissingDirectories(cwd, ["public"]),
88
- };
89
- }
90
- if (result.check === ".gitignore configuration" &&
91
- result.status === "warn") {
92
- const missingPatterns = extractMissingPatterns(result.message);
93
- if (missingPatterns.length > 0) {
94
- return {
95
- ...result,
96
- fix: () => fixes.fixGitignore(cwd, missingPatterns),
97
- };
98
- }
99
- }
100
- if (result.check === "Environment template" &&
101
- result.status === "warn") {
102
- return {
103
- ...result,
104
- fix: () => fixes.fixMissingEnvTemplate(cwd),
105
- };
106
- }
107
- return result;
108
- });
109
- }
110
- /**
111
- * Extract missing dependencies from diagnostic message
112
- */
113
- function extractMissingDependencies(message) {
114
- const match = message.match(/Missing dependencies: (.+)/);
115
- if (match && match[1]) {
116
- return match[1].split(", ").map((d) => d.trim());
117
- }
118
- return [];
119
- }
120
- /**
121
- * Extract missing patterns from diagnostic message
122
- */
123
- function extractMissingPatterns(message) {
124
- const match = message.match(/missing patterns: (.+)/i);
125
- if (match && match[1]) {
126
- return match[1].split(", ").map((p) => p.trim());
127
- }
128
- return [];
129
- }
@@ -1,35 +0,0 @@
1
- /**
2
- * reveal init command
3
- * Interactive project setup for RevealUI Framework
4
- */
5
- /**
6
- * Options for project initialization
7
- */
8
- export interface InitOptions {
9
- /** Project name (defaults to current directory name) */
10
- projectName?: string;
11
- /** Project template to use */
12
- template?: "basic" | "blog" | "e-commerce" | "portfolio";
13
- /** Whether to use TypeScript */
14
- useTypeScript?: boolean;
15
- /** Whether to use Tailwind CSS */
16
- useTailwind?: boolean;
17
- /** Whether to include PayloadCMS */
18
- usePayload?: boolean;
19
- }
20
- /**
21
- * Interactive project initialization
22
- * Creates a new RevealUI project with the specified configuration
23
- *
24
- * @param options - Initialization options
25
- * @example
26
- * ```ts
27
- * await initProject({
28
- * template: 'blog',
29
- * useTypeScript: true,
30
- * useTailwind: true,
31
- * })
32
- * ```
33
- */
34
- export declare function initProject(options?: InitOptions): Promise<void>;
35
- //# sourceMappingURL=init.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC3B,wDAAwD;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,YAAY,GAAG,WAAW,CAAC;IACzD,gCAAgC;IAChC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,kCAAkC;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyG1E"}
@@ -1,104 +0,0 @@
1
- /**
2
- * reveal init command
3
- * Interactive project setup for RevealUI Framework
4
- */
5
- import pc from "@brillout/picocolors";
6
- import fs from "node:fs/promises";
7
- import path from "node:path";
8
- /**
9
- * Interactive project initialization
10
- * Creates a new RevealUI project with the specified configuration
11
- *
12
- * @param options - Initialization options
13
- * @example
14
- * ```ts
15
- * await initProject({
16
- * template: 'blog',
17
- * useTypeScript: true,
18
- * useTailwind: true,
19
- * })
20
- * ```
21
- */
22
- export async function initProject(options = {}) {
23
- console.log(pc.cyan("Welcome to RevealUI!"));
24
- console.log("Let's set up your project.\n");
25
- // Determine project name
26
- const projectName = options.projectName || path.basename(process.cwd()) || "my-revealui-app";
27
- // Create basic project structure
28
- const projectDir = process.cwd();
29
- // Create directories
30
- const dirs = [
31
- "src/pages",
32
- "src/components",
33
- "src/lib",
34
- "src/styles",
35
- "public",
36
- ];
37
- for (const dir of dirs) {
38
- await fs.mkdir(path.join(projectDir, dir), { recursive: true });
39
- }
40
- // Create reveal.config.ts
41
- const configContent = `import { defineConfig } from "@revealui/core/config";
42
- import react from "@revealui/core/plugins/react";
43
- ${options.usePayload ? 'import payload from "@revealui/core/plugins/payload";' : ""}
44
- import vercel from "@revealui/core/plugins/vercel";
45
-
46
- export default defineConfig({
47
- plugins: [
48
- react(),
49
- ${options.usePayload ? "payload()," : ""}
50
- vercel(),
51
- ],
52
- vike: {
53
- prerender: true,
54
- },
55
- });
56
- `;
57
- await fs.writeFile(path.join(projectDir, "reveal.config.ts"), configContent, "utf-8");
58
- // Create package.json if it doesn't exist
59
- try {
60
- await fs.access(path.join(projectDir, "package.json"));
61
- }
62
- catch {
63
- const packageJson = {
64
- name: projectName,
65
- version: "0.1.0",
66
- type: "module",
67
- scripts: {
68
- dev: "vike dev",
69
- build: "vike build",
70
- preview: "vike preview",
71
- },
72
- dependencies: {
73
- reveal: "latest",
74
- react: "^19.0.0",
75
- "react-dom": "^19.0.0",
76
- vike: "latest",
77
- "vike-react": "latest",
78
- },
79
- devDependencies: {
80
- "@types/react": "^19.0.0",
81
- "@types/react-dom": "^19.0.0",
82
- typescript: "^5.7.0",
83
- vite: "^6.0.0",
84
- },
85
- };
86
- await fs.writeFile(path.join(projectDir, "package.json"), JSON.stringify(packageJson, null, 2), "utf-8");
87
- }
88
- // Create basic page
89
- const pageContent = `export default function Page() {
90
- return (
91
- <div>
92
- <h1>Welcome to RevealUI</h1>
93
- <p>Your project is ready to go!</p>
94
- </div>
95
- );
96
- }
97
- `;
98
- await fs.writeFile(path.join(projectDir, "src/pages/index.page.tsx"), pageContent, "utf-8");
99
- console.log(pc.green("āœ“ Project initialized successfully!"));
100
- console.log("\nNext steps:");
101
- console.log(` 1. Run ${pc.cyan("pnpm install")} to install dependencies`);
102
- console.log(` 2. Run ${pc.cyan("pnpm dev")} to start the dev server`);
103
- console.log(` 3. Visit ${pc.cyan("http://localhost:3000")} to see your app`);
104
- }
@@ -1,9 +0,0 @@
1
- /**
2
- * Check for available updates for the reveal package
3
- */
4
- export declare function runUpgrade(): Promise<void>;
5
- /**
6
- * Check for dependency updates across the project
7
- */
8
- export declare function checkDependencyUpdates(): Promise<void>;
9
- //# sourceMappingURL=upgrade.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAqFhD;AAED;;GAEG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAc5D"}
@@ -1,85 +0,0 @@
1
- import { execSync } from "child_process";
2
- import fs from "node:fs/promises";
3
- import path from "node:path";
4
- import prompts from "prompts";
5
- import pc from "@brillout/picocolors";
6
- /**
7
- * Check for available updates for the reveal package
8
- */
9
- export async function runUpgrade() {
10
- console.log(pc.cyan("\nšŸ”„ RevealUI Framework Upgrade\n"));
11
- console.log(pc.gray("Checking for updates...\n"));
12
- const cwd = process.cwd();
13
- const packageJsonPath = path.join(cwd, "package.json");
14
- try {
15
- const packageJsonContent = await fs.readFile(packageJsonPath, "utf-8");
16
- const packageJson = JSON.parse(packageJsonContent);
17
- const currentVersion = packageJson.dependencies?.reveal ||
18
- packageJson.devDependencies?.reveal ||
19
- "not found";
20
- console.log(pc.cyan(`Current version: ${currentVersion}\n`));
21
- // Check for latest version
22
- try {
23
- const latestVersion = execSync("npm view reveal version", {
24
- encoding: "utf-8",
25
- }).trim();
26
- console.log(pc.cyan(`Latest version: ${latestVersion}\n`));
27
- if (currentVersion === latestVersion || currentVersion.includes(latestVersion)) {
28
- console.log(pc.green("āœ“ You're already on the latest version!\n"));
29
- return;
30
- }
31
- // Show changelog info
32
- console.log(pc.yellow("New version available!\n"));
33
- console.log(pc.gray("To see what's new, visit: https://github.com/RevealUIStudio/reveal/releases\n"));
34
- // Ask for confirmation
35
- const response = await prompts({
36
- type: "confirm",
37
- name: "upgrade",
38
- message: `Upgrade from ${currentVersion} to ${latestVersion}?`,
39
- initial: true,
40
- });
41
- if (!response.upgrade) {
42
- console.log(pc.yellow("\nUpgrade cancelled."));
43
- return;
44
- }
45
- // Perform upgrade
46
- console.log(pc.cyan("\nUpgrading...\n"));
47
- const isDevDependency = packageJson.devDependencies?.reveal;
48
- const command = isDevDependency
49
- ? `pnpm add -D reveal@${latestVersion}`
50
- : `pnpm add reveal@${latestVersion}`;
51
- execSync(command, {
52
- cwd,
53
- stdio: "inherit",
54
- });
55
- console.log(pc.green("\nāœ… Upgrade complete!\n"));
56
- console.log(pc.cyan("Next steps:"));
57
- console.log(pc.gray(" 1. Review the changelog for breaking changes"));
58
- console.log(pc.gray(" 2. Run 'reveal doctor' to check for any issues"));
59
- console.log(pc.gray(" 3. Update your code if necessary\n"));
60
- }
61
- catch (error) {
62
- console.log(pc.yellow("\n⚠ Could not check for latest version. Make sure you're connected to the internet."));
63
- console.log(pc.gray("You can manually upgrade by running:\n"));
64
- console.log(pc.cyan(" pnpm add reveal@latest\n"));
65
- }
66
- }
67
- catch (error) {
68
- console.error(pc.red("Error reading package.json"), error);
69
- process.exit(1);
70
- }
71
- }
72
- /**
73
- * Check for dependency updates across the project
74
- */
75
- export async function checkDependencyUpdates() {
76
- console.log(pc.cyan("\nšŸ“¦ Checking for dependency updates...\n"));
77
- try {
78
- execSync("pnpm outdated", {
79
- stdio: "inherit",
80
- });
81
- }
82
- catch {
83
- console.log(pc.yellow("Run 'pnpm outdated' manually to see all dependency updates."));
84
- }
85
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/onLoad.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export { onLoad };
2
- declare function onLoad(): void;
3
- //# sourceMappingURL=onLoad.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onLoad.d.ts","sourceRoot":"","sources":["../src/onLoad.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,EAAE,CAAC;AAElB,iBAAS,MAAM,SAEd"}
package/dist/onLoad.js DELETED
@@ -1,5 +0,0 @@
1
- import { assertIsNotBrowser } from "@revealui/core/cli/assertions/assertIsNotBrowser";
2
- export { onLoad };
3
- function onLoad() {
4
- assertIsNotBrowser();
5
- }
package/dist/utils.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export * from "@revealui/core/cli/assertions/assert";
2
- export { projectInfo } from "@revealui/core/cli/projectInfo";
3
- //# sourceMappingURL=utils.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAKA,cAAc,sCAAsC,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC"}
package/dist/utils.js DELETED
@@ -1,6 +0,0 @@
1
- // We assume all runtime entries will load this utils.ts file
2
- import { onLoad } from "./onLoad.js";
3
- onLoad();
4
- // Export from CLI-specific exports (these avoid directory import issues)
5
- export * from "@revealui/core/cli/assertions/assert";
6
- export { projectInfo } from "@revealui/core/cli/projectInfo";