@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
package/dist/cli.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env bun
2
+ export {};
package/dist/cli.js ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env bun
2
+ import { runLauncher } from "@reliverse/dler-launcher";
3
+ await runLauncher(import.meta.url);
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;
@@ -0,0 +1,564 @@
1
+ import { applyPresets, runBuildOnAllPackages, validateAndExit } from "@reliverse/dler-build";
2
+ import {
3
+ defineCmd,
4
+ defineCmdArgs,
5
+ defineCmdCfg
6
+ } from "@reliverse/dler-launcher";
7
+ import { logger } from "@reliverse/dler-logger";
8
+ import { replaceExportsInPackages } from "@reliverse/dler-helpers";
9
+ const buildCmd = 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 buildOptions = applyPresets(args);
16
+ validateAndExit(buildOptions);
17
+ const results = await runBuildOnAllPackages(args.ignore, args.cwd, {
18
+ ...buildOptions,
19
+ allowPrivateBuild: args.allowPrivateBuild
20
+ });
21
+ if (results.hasErrors) {
22
+ process.exit(1);
23
+ }
24
+ const shouldReplaceExports = args.replaceExports !== false;
25
+ if (shouldReplaceExports && !buildOptions.watch) {
26
+ if (args.verbose) {
27
+ logger.info("\n\u{1F4DD} Replacing exports from ./src/*.ts to ./dist/*.js after build...");
28
+ }
29
+ await replaceExportsInPackages({
30
+ direction: "ts-to-js",
31
+ cwd: args.cwd,
32
+ ignorePackages: args.replaceExportsIgnorePackages,
33
+ verbose: args.verbose
34
+ });
35
+ }
36
+ logger.success("\n\u2705 All packages built successfully!");
37
+ } catch (error) {
38
+ logger.error("\n\u274C Build 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 buildCmdArgs = defineCmdArgs({
48
+ ignore: {
49
+ type: "string",
50
+ description: "Package(s) to ignore (supports wildcards like @reliverse/*)"
51
+ },
52
+ cwd: {
53
+ type: "string",
54
+ description: "Working directory (monorepo root)"
55
+ },
56
+ concurrency: {
57
+ type: "number",
58
+ description: "Number of packages to build concurrently (default: 5)"
59
+ },
60
+ stopOnError: {
61
+ type: "boolean",
62
+ description: "Stop on first error instead of collecting all errors (default: false)"
63
+ },
64
+ verbose: {
65
+ type: "boolean",
66
+ description: "Verbose mode (default: false)"
67
+ },
68
+ watch: {
69
+ type: "boolean",
70
+ description: "Watch mode for hot rebuild (default: false)"
71
+ },
72
+ bundler: {
73
+ type: "string",
74
+ description: "Bundler to use: bun (fast, bundles deps) or mkdist (preserves structure, default for libraries)"
75
+ },
76
+ target: {
77
+ type: "string",
78
+ description: "Build target: browser, bun, or node (default: bun)"
79
+ },
80
+ format: {
81
+ type: "string",
82
+ description: "Output format: esm, cjs, or iife (default: esm)"
83
+ },
84
+ minify: {
85
+ type: "boolean",
86
+ description: "Enable all minification options (default: false)"
87
+ },
88
+ minifyWhitespace: {
89
+ type: "boolean",
90
+ description: "Minify whitespace (default: false)"
91
+ },
92
+ minifySyntax: {
93
+ type: "boolean",
94
+ description: "Minify syntax and inline constants (default: false)"
95
+ },
96
+ minifyIdentifiers: {
97
+ type: "boolean",
98
+ description: "Minify variable and function identifiers (default: false)"
99
+ },
100
+ sourcemap: {
101
+ type: "string",
102
+ description: "Sourcemap option: none, linked, inline, or external (default: none)"
103
+ },
104
+ splitting: {
105
+ type: "boolean",
106
+ description: "Enable code splitting (default: true)"
107
+ },
108
+ external: {
109
+ type: "string",
110
+ description: "External packages to exclude from bundle (supports wildcards)"
111
+ },
112
+ bytecode: {
113
+ type: "boolean",
114
+ description: "Generate bytecode for faster cold starts (requires format: cjs, target: bun)"
115
+ },
116
+ drop: {
117
+ type: "string",
118
+ description: "Drop function calls (e.g., 'console.log', 'debugger')"
119
+ },
120
+ packages: {
121
+ type: "string",
122
+ description: "How to handle dependencies: bundle or external (default: bundle)"
123
+ },
124
+ publicPath: {
125
+ type: "string",
126
+ description: "Prefix for import paths in bundled code"
127
+ },
128
+ root: {
129
+ type: "string",
130
+ description: "Project root for resolving relative paths"
131
+ },
132
+ define: {
133
+ type: "string",
134
+ description: `Define global constants (JSON format, e.g., '{"__VERSION__":"1.0.0"}')`
135
+ },
136
+ naming: {
137
+ type: "string",
138
+ description: "Customize output file naming (JSON format)"
139
+ },
140
+ env: {
141
+ type: "string",
142
+ description: "Environment variable handling: inline, disable, or prefix like PUBLIC_*"
143
+ },
144
+ banner: {
145
+ type: "string",
146
+ description: "Add banner to bundled code (e.g., 'use client')"
147
+ },
148
+ footer: {
149
+ type: "string",
150
+ description: "Add footer to bundled code"
151
+ },
152
+ conditions: {
153
+ type: "string",
154
+ description: "Package.json exports conditions for import resolution"
155
+ },
156
+ loader: {
157
+ type: "string",
158
+ description: "Custom loaders for file extensions (JSON format)"
159
+ },
160
+ ignoreDCEAnnotations: {
161
+ type: "boolean",
162
+ description: "Ignore dead code elimination annotations"
163
+ },
164
+ emitDCEAnnotations: {
165
+ type: "boolean",
166
+ description: "Force emit dead code elimination annotations"
167
+ },
168
+ throw: {
169
+ type: "boolean",
170
+ description: "Throw on build errors instead of returning success: false"
171
+ },
172
+ production: {
173
+ type: "boolean",
174
+ description: "Enable production mode (minify=true, sourcemap=none, env=inline)"
175
+ },
176
+ dev: {
177
+ type: "boolean",
178
+ description: "Enable development mode (minify=false, sourcemap=inline, watch=true)"
179
+ },
180
+ compile: {
181
+ type: "boolean",
182
+ description: "Generate standalone Bun executable"
183
+ },
184
+ cache: {
185
+ type: "boolean",
186
+ description: "Enable build caching (default: true)"
187
+ },
188
+ noCache: {
189
+ type: "boolean",
190
+ description: "Disable build caching"
191
+ },
192
+ entryNaming: {
193
+ type: "string",
194
+ description: "Entry point naming pattern (e.g., '[dir]/[name].[ext]')"
195
+ },
196
+ chunkNaming: {
197
+ type: "string",
198
+ description: "Chunk naming pattern (e.g., '[name]-[hash].[ext]')"
199
+ },
200
+ assetNaming: {
201
+ type: "string",
202
+ description: "Asset naming pattern (e.g., '[name]-[hash].[ext]')"
203
+ },
204
+ // Frontend-specific options
205
+ html: {
206
+ type: "boolean",
207
+ description: "Enable HTML entry point processing (auto-detected for frontend apps)"
208
+ },
209
+ cssChunking: {
210
+ type: "boolean",
211
+ description: "Chunk CSS to reduce duplication (default: true for frontend apps)"
212
+ },
213
+ devServer: {
214
+ type: "boolean",
215
+ description: "Start dev server with HMR (requires --watch)"
216
+ },
217
+ port: {
218
+ type: "number",
219
+ description: "Dev server port (default: 3000)"
220
+ },
221
+ open: {
222
+ type: "boolean",
223
+ description: "Open browser on dev server start"
224
+ },
225
+ publicAssets: {
226
+ type: "string",
227
+ description: "Public assets directory (default: public)"
228
+ },
229
+ jsxRuntime: {
230
+ type: "string",
231
+ description: "JSX runtime: automatic or classic (default: automatic)"
232
+ },
233
+ jsxImportSource: {
234
+ type: "string",
235
+ description: "JSX import source (e.g., 'react' for classic runtime)"
236
+ },
237
+ keepNames: {
238
+ type: "boolean",
239
+ description: "Preserve original function and class names when minifying"
240
+ },
241
+ debug: {
242
+ type: "boolean",
243
+ description: "Enable debug mode with verbose internal logging"
244
+ },
245
+ experimental: {
246
+ type: "string",
247
+ description: "Enable experimental features (comma-separated list)"
248
+ },
249
+ // New Bun bundler features
250
+ noBundle: {
251
+ type: "boolean",
252
+ description: "Transpile only \u2014 do not bundle"
253
+ },
254
+ reactFastRefresh: {
255
+ type: "boolean",
256
+ description: "Enable React Fast Refresh transform (for development testing)"
257
+ },
258
+ noClearScreen: {
259
+ type: "boolean",
260
+ description: "Don't clear the terminal when rebuilding with --watch"
261
+ },
262
+ // Windows executable options
263
+ windowsHideConsole: {
264
+ type: "boolean",
265
+ description: "Prevent a console window from opening when running a compiled Windows executable"
266
+ },
267
+ windowsIcon: {
268
+ type: "string",
269
+ description: "Set an icon for the Windows executable"
270
+ },
271
+ windowsTitle: {
272
+ type: "string",
273
+ description: "Set the Windows executable product name"
274
+ },
275
+ windowsPublisher: {
276
+ type: "string",
277
+ description: "Set the Windows executable company name"
278
+ },
279
+ windowsVersion: {
280
+ type: "string",
281
+ description: "Set the Windows executable version (e.g. 1.2.3.4)"
282
+ },
283
+ windowsDescription: {
284
+ type: "string",
285
+ description: "Set the Windows executable description"
286
+ },
287
+ windowsCopyright: {
288
+ type: "string",
289
+ description: "Set the Windows executable copyright notice"
290
+ },
291
+ // Experimental features
292
+ app: {
293
+ type: "boolean",
294
+ description: "(EXPERIMENTAL) Build a web app for production using Bun Bake"
295
+ },
296
+ serverComponents: {
297
+ type: "boolean",
298
+ description: "(EXPERIMENTAL) Enable React Server Components"
299
+ },
300
+ debugDumpServerFiles: {
301
+ type: "boolean",
302
+ description: "When --app is set, dump all server files to disk even for static builds"
303
+ },
304
+ debugNoMinify: {
305
+ type: "boolean",
306
+ description: "When --app is set, disable all minification"
307
+ },
308
+ // Enhanced features
309
+ macros: {
310
+ type: "boolean",
311
+ description: "Enable Bun macros support for compile-time code generation"
312
+ },
313
+ sideEffects: {
314
+ type: "string",
315
+ description: "Configure sideEffects for tree-shaking (boolean or JSON array)"
316
+ },
317
+ bundleAnalyzer: {
318
+ type: "boolean",
319
+ description: "Generate bundle analysis report"
320
+ },
321
+ typeCheck: {
322
+ type: "boolean",
323
+ description: "Run TypeScript type checking during build"
324
+ },
325
+ generateTypes: {
326
+ type: "boolean",
327
+ description: "Generate TypeScript declaration files (.d.ts)"
328
+ },
329
+ bundleSizeLimit: {
330
+ type: "number",
331
+ description: "Set maximum bundle size limit in bytes"
332
+ },
333
+ performanceBudget: {
334
+ type: "string",
335
+ description: "Set performance budget (JSON format)"
336
+ },
337
+ // Asset optimization
338
+ imageOptimization: {
339
+ type: "boolean",
340
+ description: "Enable image optimization (WebP conversion, compression)"
341
+ },
342
+ fontOptimization: {
343
+ type: "boolean",
344
+ description: "Enable font optimization (subsetting, compression)"
345
+ },
346
+ cssOptimization: {
347
+ type: "boolean",
348
+ description: "Enable CSS optimization (purge, minify, autoprefixer)"
349
+ },
350
+ // Modern loaders
351
+ svgAsReact: {
352
+ type: "boolean",
353
+ description: "Transform SVG files into React components"
354
+ },
355
+ cssModules: {
356
+ type: "boolean",
357
+ description: "Enable CSS Modules support"
358
+ },
359
+ workerSupport: {
360
+ type: "boolean",
361
+ description: "Enable Web Worker support"
362
+ },
363
+ // Plugin system
364
+ plugins: {
365
+ type: "string",
366
+ description: "Load custom plugins (comma-separated list)"
367
+ },
368
+ // Performance monitoring
369
+ performanceMonitoring: {
370
+ type: "boolean",
371
+ description: "Enable performance monitoring and reporting"
372
+ },
373
+ bundleAnalysis: {
374
+ type: "boolean",
375
+ description: "Generate detailed bundle analysis"
376
+ },
377
+ maxConfigDepth: {
378
+ type: "number",
379
+ description: "Maximum directory levels to search up for dler.ts config (default: 3)"
380
+ },
381
+ // Package preparation for publishing
382
+ prepareForPublish: {
383
+ type: "boolean",
384
+ description: "Transform package.json for publishing (exports, bin, private fields)"
385
+ },
386
+ kind: {
387
+ type: "string",
388
+ description: "Package kind: library, cli, browser-app, or native-app"
389
+ },
390
+ bin: {
391
+ type: "string",
392
+ description: "Binary definitions for CLI packages (e.g., 'dler=dist/cli.js,login=dist/foo/bar/login.js')"
393
+ },
394
+ // TSConfig validation
395
+ strictTsconfig: {
396
+ type: "boolean",
397
+ description: "Make TSConfig validation errors fatal (default: false)"
398
+ },
399
+ validateTsconfig: {
400
+ type: "boolean",
401
+ description: "Validate tsconfig.json files for common issues (default: true)"
402
+ },
403
+ dtsProvider: {
404
+ type: "string",
405
+ description: "Provider for generating .d.ts files: dts-bundle-generator (default), api-extractor, typescript, or mkdist"
406
+ },
407
+ replaceExports: {
408
+ type: "boolean",
409
+ description: "Replace exports from ./src/*.ts to ./dist/*.js after build completes (default: true)"
410
+ },
411
+ replaceExportsIgnorePackages: {
412
+ type: "string",
413
+ description: "Packages to ignore when replacing exports (supports glob patterns like @reliverse/*)"
414
+ },
415
+ allowPrivateBuild: {
416
+ type: "string",
417
+ description: "Allow building private packages (supports wildcards like @reliverse/* to build all packages starting with @reliverse/)"
418
+ }
419
+ });
420
+ const buildCmdCfg = defineCmdCfg({
421
+ name: "build",
422
+ description: "Build all workspace packages using configurable bundler (mkdist for libraries, bun for apps) with dler.ts configuration. Auto-detects frontend apps and libraries. Supports presets: --production, --dev, --library, --react, --node, --monorepo.",
423
+ examples: [
424
+ "dler build",
425
+ 'dler build --ignore "@reliverse/*"',
426
+ 'dler build --ignore "@reliverse/dler-colors" --ignore "@reliverse/dler-v1"',
427
+ 'dler build --ignore "@reliverse/dler-colors @reliverse/dler-v1"',
428
+ "dler build --cwd /path/to/monorepo",
429
+ "dler build --cwd /path/to/monorepo --ignore @reliverse/*",
430
+ "dler build --concurrency 8",
431
+ "dler build --concurrency 2 --stopOnError",
432
+ "dler build --ignore @reliverse/* --concurrency 6 --stopOnError",
433
+ "dler build --verbose",
434
+ "dler build --verbose --ignore @reliverse/*",
435
+ "dler build --verbose --concurrency 2 --stopOnError",
436
+ "dler build --watch",
437
+ "dler build --watch --verbose",
438
+ "dler build --target node --format cjs",
439
+ "dler build --minify --sourcemap linked",
440
+ "dler build --target browser --format esm --splitting false",
441
+ "dler build --external react --external react-dom",
442
+ "dler build --watch --target browser --minify --sourcemap inline",
443
+ "dler build --production",
444
+ "dler build --dev",
445
+ "dler build --bytecode --format cjs --target bun",
446
+ "dler build --minifyWhitespace --minifySyntax --minifyIdentifiers",
447
+ "dler build --drop console.log --drop debugger",
448
+ `dler build --env PUBLIC_* --define '{"__VERSION__":"1.0.0"}'`,
449
+ "dler build --banner 'use client' --footer '// built with dler'",
450
+ "dler build --entryNaming '[dir]/[name].[ext]' --chunkNaming '[name]-[hash].[ext]'",
451
+ "dler build --compile --production",
452
+ "dler build --noCache --verbose",
453
+ "dler build --packages external --external 'react*'",
454
+ "dler build --publicPath /assets/ --root ./src",
455
+ "",
456
+ "# Standalone Executable Examples:",
457
+ "dler build --compile --production --target bun",
458
+ "dler build --compile --target node --format cjs --minify",
459
+ "dler build --compile --bytecode --format cjs --target bun",
460
+ "dler build --compile --windowsIcon app.ico --windowsTitle 'My App'",
461
+ "dler build --compile --production --env inline --drop console.log",
462
+ "",
463
+ "# Note: --compile generates executables alongside bundles",
464
+ "# For Bun executables, use --target bun --format cjs --bytecode for best performance",
465
+ "# For Node executables, use --target node --format cjs",
466
+ "",
467
+ "# Preset Examples:",
468
+ "dler build --production # Optimized for production",
469
+ "dler build --dev # Development mode with watch",
470
+ "dler build --library # Library build (external deps)",
471
+ "dler build --react # React app with JSX support",
472
+ "dler build --node # Node.js server build",
473
+ "dler build --monorepo # Monorepo optimized build",
474
+ "",
475
+ "# Bundler Examples:",
476
+ "dler build --bundler mkdist # Use mkdist bundler (default for libraries)",
477
+ "dler build --bundler bun # Use Bun bundler (default for apps)",
478
+ "dler build --bundler mkdist --kind library",
479
+ "dler build --bundler bun --kind library",
480
+ "",
481
+ "# Note: mkdist preserves file structure and is ideal for libraries",
482
+ "# bun bundles dependencies and is ideal for applications",
483
+ "",
484
+ "# New Bun bundler features:",
485
+ "dler build --noBundle --target node",
486
+ "dler build --reactFastRefresh --watch",
487
+ "dler build --noClearScreen --watch",
488
+ "dler build --windowsHideConsole --windowsIcon app.ico --compile",
489
+ "dler build --app --serverComponents",
490
+ "dler build --debugDumpServerFiles --debugNoMinify",
491
+ "",
492
+ "# Enhanced Features:",
493
+ "dler build --bundleAnalyzer --performanceMonitoring",
494
+ "dler build --generateTypes --typeCheck",
495
+ "dler build --macros --sideEffects false",
496
+ `dler build --bundleSizeLimit 1048576 --performanceBudget '{"maxBundleSize":1048576}'`,
497
+ "dler build --imageOptimization --fontOptimization --cssOptimization",
498
+ "dler build --svgAsReact --cssModules --workerSupport",
499
+ "dler build --plugins 'react-refresh,typescript-declarations,bundle-analyzer'",
500
+ "",
501
+ "# Frontend App Examples:",
502
+ "dler build --devServer --watch --open --reactFastRefresh",
503
+ "dler build --production --html --cssChunking --bundleAnalyzer",
504
+ "dler build --target browser --format esm --html --cssChunking --svgAsReact",
505
+ "dler build --devServer --port 8080 --open --cssModules",
506
+ "dler build --html --publicAssets static --cssChunking --imageOptimization",
507
+ "",
508
+ "# Full-stack App Examples:",
509
+ "dler build --target browser --format esm --html --assets public --workerSupport",
510
+ "dler build --devServer --watch --target browser --html --performanceMonitoring",
511
+ "",
512
+ "# Library Examples:",
513
+ "dler build --library --generateTypes --typeCheck",
514
+ "dler build --target bun --format esm --generateTypes --bundleAnalyzer",
515
+ "dler build --target node --format cjs --generateTypes --sideEffects false",
516
+ "",
517
+ "# Configuration Examples:",
518
+ "# Create dler.ts in your monorepo root:",
519
+ "# export default {",
520
+ "# build: {",
521
+ "# global: { target: 'bun', format: 'esm' },",
522
+ "# packages: { 'my-package': { minify: true, generateTypes: true } },",
523
+ "# patterns: [{ pattern: 'apps/*', config: { target: 'browser', html: true, bundleAnalyzer: true } }]",
524
+ "# }",
525
+ "# }",
526
+ "",
527
+ "# Note: Configuration is only supported via dler.ts",
528
+ "# package.json build fields are not supported",
529
+ "",
530
+ "# Config Discovery Examples:",
531
+ "dler build --maxConfigDepth 5",
532
+ "",
533
+ "# Package Preparation for Publishing:",
534
+ "dler build --prepareForPublish",
535
+ "dler build --prepareForPublish --kind library",
536
+ "dler build --prepareForPublish --kind cli --bin 'my-cli=dist/cli.js'",
537
+ "dler build --prepareForPublish --kind cli --bin 'dler=dist/cli.js,login=dist/foo/bar/login.js'",
538
+ "dler build --production --prepareForPublish --kind library",
539
+ "",
540
+ "# Note: Use --prepareForPublish to transform package.json for publishing",
541
+ "# This updates exports field, adds bin field for CLI packages, and sets private: false",
542
+ "",
543
+ "# TSConfig Validation Examples:",
544
+ "dler build --validateTsconfig",
545
+ "dler build --strictTsconfig",
546
+ "dler build --validateTsconfig --verbose",
547
+ "dler build --noValidateTsconfig",
548
+ "",
549
+ "# Note: --validateTsconfig checks tsconfig.json for common issues",
550
+ "# Use --strictTsconfig to make validation errors fatal",
551
+ "",
552
+ "# DTS Provider Examples:",
553
+ "dler build --dtsProvider dts-bundle-generator",
554
+ "dler build --dtsProvider api-extractor",
555
+ "dler build --dtsProvider typescript",
556
+ "dler build --dtsProvider mkdist",
557
+ "dler build --generateTypes --dtsProvider dts-bundle-generator",
558
+ "",
559
+ "# Note: dts-bundle-generator is the default provider for better bundling",
560
+ "# mkdist provider offers VFS-based processing with automatic relative import resolution",
561
+ "# Use --dtsProvider to override the default provider"
562
+ ]
563
+ });
564
+ export default defineCmd(buildCmd, buildCmdArgs, buildCmdCfg);
@@ -0,0 +1,2 @@
1
+ declare const _default: any;
2
+ export default _default;