@reliverse/dler 2.0.0 → 2.0.2

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 (135) hide show
  1. package/dist/cli.d.ts +2 -0
  2. package/dist/cli.js +3 -0
  3. package/dist/cmds/build/cmd.d.ts +2 -0
  4. package/dist/cmds/build/cmd.js +564 -0
  5. package/dist/cmds/clean/cmd.d.ts +2 -0
  6. package/dist/cmds/clean/cmd.js +146 -0
  7. package/dist/cmds/clean/impl.d.ts +2 -0
  8. package/dist/cmds/clean/impl.js +627 -0
  9. package/dist/cmds/clean/presets.d.ts +10 -0
  10. package/dist/cmds/clean/presets.js +112 -0
  11. package/dist/cmds/clean/types.d.ts +62 -0
  12. package/dist/cmds/clean/types.js +0 -0
  13. package/dist/cmds/init/cmd.d.ts +3 -0
  14. package/dist/cmds/init/cmd.js +56 -0
  15. package/dist/cmds/init/impl/config.d.ts +45 -0
  16. package/dist/cmds/init/impl/config.js +99 -0
  17. package/dist/cmds/init/impl/generators.d.ts +6 -0
  18. package/dist/cmds/init/impl/generators.js +178 -0
  19. package/dist/cmds/init/impl/prompts.d.ts +2 -0
  20. package/dist/cmds/init/impl/prompts.js +98 -0
  21. package/dist/cmds/init/impl/types.d.ts +22 -0
  22. package/dist/cmds/init/impl/types.js +0 -0
  23. package/dist/cmds/init/impl/utils.d.ts +4 -0
  24. package/dist/cmds/init/impl/utils.js +11 -0
  25. package/dist/cmds/init/impl/validators.d.ts +4 -0
  26. package/dist/cmds/init/impl/validators.js +42 -0
  27. package/dist/cmds/integrate/cmd.d.ts +3 -0
  28. package/dist/cmds/integrate/cmd.js +70 -0
  29. package/dist/cmds/integrate/impl.d.ts +7 -0
  30. package/dist/cmds/integrate/impl.js +127 -0
  31. package/dist/cmds/integrate/integrations/base.d.ts +13 -0
  32. package/dist/cmds/integrate/integrations/base.js +41 -0
  33. package/dist/cmds/integrate/integrations/nextjs.d.ts +16 -0
  34. package/dist/cmds/integrate/integrations/nextjs.js +167 -0
  35. package/dist/cmds/integrate/integrations/registry.d.ts +7 -0
  36. package/dist/cmds/integrate/integrations/registry.js +31 -0
  37. package/dist/cmds/integrate/integrations/ultracite.d.ts +11 -0
  38. package/dist/cmds/integrate/integrations/ultracite.js +40 -0
  39. package/dist/cmds/integrate/types.d.ts +39 -0
  40. package/dist/cmds/integrate/types.js +0 -0
  41. package/dist/cmds/integrate/utils/biome.d.ts +4 -0
  42. package/dist/cmds/integrate/utils/biome.js +140 -0
  43. package/dist/cmds/integrate/utils/context.d.ts +3 -0
  44. package/dist/cmds/integrate/utils/context.js +111 -0
  45. package/dist/cmds/integrate/utils/temp.d.ts +3 -0
  46. package/dist/cmds/integrate/utils/temp.js +36 -0
  47. package/dist/cmds/perf/analysis/bundle.d.ts +20 -0
  48. package/dist/cmds/perf/analysis/bundle.js +225 -0
  49. package/dist/cmds/perf/analysis/filesystem.d.ts +27 -0
  50. package/dist/cmds/perf/analysis/filesystem.js +246 -0
  51. package/dist/cmds/perf/analysis/monorepo.d.ts +29 -0
  52. package/dist/cmds/perf/analysis/monorepo.js +307 -0
  53. package/dist/cmds/perf/benchmarks/command.d.ts +21 -0
  54. package/dist/cmds/perf/benchmarks/command.js +162 -0
  55. package/dist/cmds/perf/benchmarks/memory.d.ts +41 -0
  56. package/dist/cmds/perf/benchmarks/memory.js +169 -0
  57. package/dist/cmds/perf/benchmarks/runner.d.ts +22 -0
  58. package/dist/cmds/perf/benchmarks/runner.js +157 -0
  59. package/dist/cmds/perf/cmd.d.ts +2 -0
  60. package/dist/cmds/perf/cmd.js +238 -0
  61. package/dist/cmds/perf/impl.d.ts +24 -0
  62. package/dist/cmds/perf/impl.js +304 -0
  63. package/dist/cmds/perf/reporters/console.d.ts +12 -0
  64. package/dist/cmds/perf/reporters/console.js +257 -0
  65. package/dist/cmds/perf/reporters/html.d.ts +27 -0
  66. package/dist/cmds/perf/reporters/html.js +881 -0
  67. package/dist/cmds/perf/reporters/json.d.ts +9 -0
  68. package/dist/cmds/perf/reporters/json.js +32 -0
  69. package/dist/cmds/perf/types.d.ts +184 -0
  70. package/dist/cmds/perf/types.js +0 -0
  71. package/dist/cmds/perf/utils/cache.d.ts +23 -0
  72. package/dist/cmds/perf/utils/cache.js +171 -0
  73. package/dist/cmds/perf/utils/formatter.d.ts +17 -0
  74. package/dist/cmds/perf/utils/formatter.js +134 -0
  75. package/dist/cmds/perf/utils/stats.d.ts +15 -0
  76. package/dist/cmds/perf/utils/stats.js +101 -0
  77. package/dist/cmds/publish/cmd.d.ts +3 -0
  78. package/dist/cmds/publish/cmd.js +189 -0
  79. package/dist/cmds/shell/cmd.d.ts +3 -0
  80. package/dist/cmds/shell/cmd.js +50 -0
  81. package/dist/cmds/tsc/cache.d.ts +27 -0
  82. package/dist/cmds/tsc/cache.js +160 -0
  83. package/dist/cmds/tsc/cmd.d.ts +2 -0
  84. package/dist/cmds/tsc/cmd.js +111 -0
  85. package/dist/cmds/tsc/impl.d.ts +41 -0
  86. package/dist/cmds/tsc/impl.js +572 -0
  87. package/dist/cmds/tsc/types.d.ts +57 -0
  88. package/dist/cmds/tsc/types.js +0 -0
  89. package/package.json +4 -11
  90. package/src/cli.ts +8 -0
  91. package/src/cmds/build/cmd.ts +582 -0
  92. package/src/cmds/clean/cmd.ts +166 -0
  93. package/src/cmds/clean/impl.ts +900 -0
  94. package/src/cmds/clean/presets.ts +158 -0
  95. package/src/cmds/clean/types.ts +71 -0
  96. package/src/cmds/init/cmd.ts +68 -0
  97. package/src/cmds/init/impl/config.ts +105 -0
  98. package/src/cmds/init/impl/generators.ts +220 -0
  99. package/src/cmds/init/impl/prompts.ts +137 -0
  100. package/src/cmds/init/impl/types.ts +25 -0
  101. package/src/cmds/init/impl/utils.ts +17 -0
  102. package/src/cmds/init/impl/validators.ts +55 -0
  103. package/src/cmds/integrate/cmd.ts +82 -0
  104. package/src/cmds/integrate/impl.ts +204 -0
  105. package/src/cmds/integrate/integrations/base.ts +69 -0
  106. package/src/cmds/integrate/integrations/nextjs.ts +227 -0
  107. package/src/cmds/integrate/integrations/registry.ts +45 -0
  108. package/src/cmds/integrate/integrations/ultracite.ts +53 -0
  109. package/src/cmds/integrate/types.ts +48 -0
  110. package/src/cmds/integrate/utils/biome.ts +173 -0
  111. package/src/cmds/integrate/utils/context.ts +148 -0
  112. package/src/cmds/integrate/utils/temp.ts +47 -0
  113. package/src/cmds/perf/analysis/bundle.ts +311 -0
  114. package/src/cmds/perf/analysis/filesystem.ts +324 -0
  115. package/src/cmds/perf/analysis/monorepo.ts +439 -0
  116. package/src/cmds/perf/benchmarks/command.ts +230 -0
  117. package/src/cmds/perf/benchmarks/memory.ts +249 -0
  118. package/src/cmds/perf/benchmarks/runner.ts +220 -0
  119. package/src/cmds/perf/cmd.ts +285 -0
  120. package/src/cmds/perf/impl.ts +411 -0
  121. package/src/cmds/perf/reporters/console.ts +331 -0
  122. package/src/cmds/perf/reporters/html.ts +984 -0
  123. package/src/cmds/perf/reporters/json.ts +42 -0
  124. package/src/cmds/perf/types.ts +220 -0
  125. package/src/cmds/perf/utils/cache.ts +234 -0
  126. package/src/cmds/perf/utils/formatter.ts +190 -0
  127. package/src/cmds/perf/utils/stats.ts +153 -0
  128. package/src/cmds/publish/cmd.ts +215 -0
  129. package/src/cmds/shell/cmd.ts +61 -0
  130. package/src/cmds/tsc/cache.ts +237 -0
  131. package/src/cmds/tsc/cmd.ts +139 -0
  132. package/src/cmds/tsc/impl.ts +855 -0
  133. package/src/cmds/tsc/types.ts +66 -0
  134. package/tsconfig.json +9 -0
  135. package/cli.js +0 -1316
@@ -0,0 +1,146 @@
1
+ import {
2
+ defineCmd,
3
+ defineCmdArgs,
4
+ defineCmdCfg
5
+ } from "@reliverse/dler-launcher";
6
+ import { logger } from "@reliverse/dler-logger";
7
+ import { replaceExportsInPackages } from "@reliverse/dler-helpers";
8
+ import { runCleanOnAllPackages } from "./impl.js";
9
+ const cleanCmd = async (args) => {
10
+ try {
11
+ if (typeof process.versions.bun === "undefined") {
12
+ logger.error("\u274C This command requires Bun runtime. Sorry.");
13
+ process.exit(1);
14
+ }
15
+ const shouldReplaceExports = args.replaceExports !== false;
16
+ if (shouldReplaceExports) {
17
+ if (args.verbose) {
18
+ logger.info("\u{1F4DD} Replacing exports from ./dist/*.js to ./src/*.ts before cleaning...");
19
+ }
20
+ await replaceExportsInPackages({
21
+ direction: "js-to-ts",
22
+ cwd: args.cwd,
23
+ ignorePackages: args.replaceExportsIgnorePackages,
24
+ verbose: args.verbose
25
+ });
26
+ }
27
+ const results = await runCleanOnAllPackages(args.ignore, args.cwd, args);
28
+ if (results.hasErrors) {
29
+ process.exit(1);
30
+ }
31
+ if (args.dryRun) {
32
+ logger.success("\n\u2705 Clean preview completed!");
33
+ } else {
34
+ logger.success("\n\u2705 Clean completed successfully!");
35
+ }
36
+ process.exit(0);
37
+ } catch (error) {
38
+ logger.error("\n\u274C Clean failed:");
39
+ if (error instanceof Error) {
40
+ logger.error(error.message);
41
+ } else {
42
+ logger.error(String(error));
43
+ }
44
+ process.exit(1);
45
+ }
46
+ };
47
+ const cleanCmdArgs = defineCmdArgs({
48
+ presets: {
49
+ type: "string",
50
+ description: "Comma-separated presets to clean: build,db,cms,frontend,docs,email,build-tools,deps,all"
51
+ },
52
+ custom: {
53
+ type: "string",
54
+ description: "Comma-separated custom patterns to clean (e.g., 'dist/,*.log,node_modules/')"
55
+ },
56
+ ignore: {
57
+ type: "string",
58
+ description: "Package(s) to ignore (supports wildcards like @reliverse/*)"
59
+ },
60
+ cwd: {
61
+ type: "string",
62
+ description: "Working directory (monorepo root)"
63
+ },
64
+ subdirs: {
65
+ type: "boolean",
66
+ description: "Search recursively in subdirectories (single-repo mode only)"
67
+ },
68
+ dryRun: {
69
+ type: "boolean",
70
+ description: "Preview what would be deleted without actually deleting"
71
+ },
72
+ force: {
73
+ type: "boolean",
74
+ description: "Skip confirmation prompt and delete immediately"
75
+ },
76
+ verbose: {
77
+ type: "boolean",
78
+ description: "Verbose mode with detailed logging"
79
+ },
80
+ deleteLockFiles: {
81
+ type: "boolean",
82
+ description: "Include lock files (bun.lock, package-lock.json, etc.) when using deps preset"
83
+ },
84
+ replaceExports: {
85
+ type: "boolean",
86
+ description: "Replace exports from ./src/*.ts to ./dist/*.js before cleaning (default: true)"
87
+ },
88
+ replaceExportsIgnorePackages: {
89
+ type: "string",
90
+ description: "Packages to ignore when replacing exports (supports glob patterns like @reliverse/*)"
91
+ }
92
+ });
93
+ const cleanCmdCfg = defineCmdCfg({
94
+ name: "clean",
95
+ description: "Clean build artifacts and generated files from workspace packages. Supports presets for different types of files. Works in both monorepo and single-repo modes.",
96
+ examples: [
97
+ "dler clean --presets build",
98
+ "dler clean --custom 'dist/,*.log'",
99
+ "dler clean --presets build --custom '*.tmp'",
100
+ "dler clean --presets all --force",
101
+ "dler clean --presets db,frontend --dry-run",
102
+ "dler clean --presets deps --deleteLockFiles",
103
+ "dler clean --subdirs --presets build-tools",
104
+ "dler clean --ignore '@reliverse/*'",
105
+ "dler clean --presets frontend --verbose",
106
+ "dler clean --presets all --dry-run --verbose",
107
+ "",
108
+ "# Preset Examples:",
109
+ "dler clean --presets build # Clean dist/, dev-dist/, target/",
110
+ "dler clean --presets db # Clean _generated/",
111
+ "dler clean --presets cms # Clean .basehub/",
112
+ "dler clean --presets frontend # Clean .next/, .nuxt/, .expo/, routeTree.gen.ts",
113
+ "dler clean --presets docs # Clean .source/",
114
+ "dler clean --presets email # Clean .react-email/",
115
+ "dler clean --presets build-tools # Clean .turbo/, .vercel/, .wrangler/",
116
+ "dler clean --presets deps # Clean node_modules/",
117
+ "dler clean --presets all # Clean everything",
118
+ "",
119
+ "# Custom Pattern Examples:",
120
+ "dler clean --custom 'dist/,*.log' # Clean dist/ and log files",
121
+ "dler clean --custom '*.tmp,*.cache' # Clean temporary and cache files",
122
+ "dler clean --custom 'build/,coverage/' # Clean build and coverage directories",
123
+ "dler clean --presets build --custom '*.log' # Combine presets and custom patterns",
124
+ "",
125
+ "# Monorepo Examples:",
126
+ "dler clean # Clean dist/ in all packages",
127
+ "dler clean --presets frontend # Clean frontend artifacts in all packages",
128
+ "dler clean --ignore '@reliverse/*' # Skip packages matching pattern",
129
+ "dler clean --presets all --force # Clean everything without confirmation",
130
+ "",
131
+ "# Single-repo Examples:",
132
+ "dler clean --subdirs # Search recursively in subdirectories",
133
+ "dler clean --subdirs --presets all # Clean everything recursively",
134
+ "",
135
+ "# Safety Examples:",
136
+ "dler clean --dry-run # Preview what would be deleted",
137
+ "dler clean --presets deps --dry-run # Preview dependency cleanup",
138
+ "dler clean --verbose # Show detailed progress",
139
+ "",
140
+ "# Advanced Examples:",
141
+ "dler clean --presets deps --deleteLockFiles # Include lock files",
142
+ "dler clean --presets all --force --verbose # Clean everything with details",
143
+ "dler clean --cwd /path/to/project --presets build"
144
+ ]
145
+ });
146
+ export default defineCmd(cleanCmd, cleanCmdArgs, cleanCmdCfg);
@@ -0,0 +1,2 @@
1
+ import type { CleanOptions, CleanSummary } from "./types.js";
2
+ export declare const runCleanOnAllPackages: (ignore?: string | string[], cwd?: string, options?: CleanOptions) => Promise<CleanSummary>;