@adonisjs/core 7.0.0-next.10 → 7.0.0-next.12

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 (181) hide show
  1. package/build/ace-DDzvaSs_.js +16 -0
  2. package/build/app-B6oge7b3.js +5 -0
  3. package/build/app-BK0PN3li.js +5 -0
  4. package/build/bodyparser_middleware-DTW0epKM.js +3 -0
  5. package/build/chunk-MjwdjG2f.js +32 -0
  6. package/build/commands/add.js +40 -110
  7. package/build/commands/build.js +51 -107
  8. package/build/commands/configure.js +82 -177
  9. package/build/commands/eject.js +17 -60
  10. package/build/commands/env/add.js +55 -134
  11. package/build/commands/generate_key.js +22 -66
  12. package/build/commands/inspect_rcfile.js +27 -55
  13. package/build/commands/list/routes.js +246 -116
  14. package/build/commands/make/command.js +15 -57
  15. package/build/commands/make/controller.js +43 -120
  16. package/build/commands/make/event.js +16 -62
  17. package/build/commands/make/exception.js +16 -62
  18. package/build/commands/make/listener.js +36 -93
  19. package/build/commands/make/middleware.js +41 -101
  20. package/build/commands/make/preload.js +47 -113
  21. package/build/commands/make/provider.js +47 -112
  22. package/build/commands/make/service.js +16 -55
  23. package/build/commands/make/test.js +47 -132
  24. package/build/commands/make/transformer.js +17 -64
  25. package/build/commands/make/validator.js +20 -80
  26. package/build/commands/make/view.js +15 -56
  27. package/build/commands/repl.js +17 -50
  28. package/build/commands/serve.js +80 -150
  29. package/build/commands/test.js +92 -202
  30. package/build/config-B2S2xfmN.js +5 -0
  31. package/build/config_provider-CY-xuo2R.js +13 -0
  32. package/build/container-ClFvcykQ.js +5 -0
  33. package/build/core-CNNCwlhc.js +95 -0
  34. package/build/create_kernel-B7zWS8Zz.js +38 -0
  35. package/build/create_kernel-CsTq0pWc.js +3 -0
  36. package/build/debug-DURPi9xn.js +3 -0
  37. package/build/decorate-DM0Sx1ye.js +7 -0
  38. package/build/dumper-C_sMcyFb.js +147 -0
  39. package/build/edge-LQdCc1L3.js +47 -0
  40. package/build/encryption-D2HGu0bU.js +5 -0
  41. package/build/events-B8hK42QT.js +5 -0
  42. package/build/factories/app.js +2 -9
  43. package/build/factories/bodyparser.js +2 -9
  44. package/build/factories/core/ace.js +15 -46
  45. package/build/factories/core/ignitor.js +12 -180
  46. package/build/factories/core/main.js +22 -11
  47. package/build/factories/core/test_utils.js +19 -43
  48. package/build/factories/encryption.js +2 -9
  49. package/build/factories/events.js +2 -9
  50. package/build/factories/hash.js +2 -9
  51. package/build/factories/http.js +2 -9
  52. package/build/factories/logger.js +2 -9
  53. package/build/factories/stubs.js +28 -91
  54. package/build/ignitor-Dil-rtCo.js +63 -0
  55. package/build/index.js +13 -46
  56. package/build/logger-Dha-0hp1.js +13 -0
  57. package/build/main-2-nm3TiB.js +72 -0
  58. package/build/main-BTUXw6He.js +171 -0
  59. package/build/main-BWftwyAK.js +81 -0
  60. package/build/main-BrJQ1VAM.js +52 -0
  61. package/build/main-CFmDHDls.js +35 -0
  62. package/build/main-D5xz2ZN1.js +5 -0
  63. package/build/main-kn40V-hF.js +2 -0
  64. package/build/main-q9TMzWUj.js +5 -0
  65. package/build/modules/ace/codemods.js +222 -477
  66. package/build/modules/ace/main.js +2 -41
  67. package/build/modules/app.js +4 -26
  68. package/build/modules/bodyparser/bodyparser_middleware.js +2 -14
  69. package/build/modules/bodyparser/main.js +4 -9
  70. package/build/modules/config.js +4 -26
  71. package/build/modules/container.js +4 -9
  72. package/build/modules/dumper/main.js +6 -32
  73. package/build/modules/dumper/plugins/edge.js +2 -62
  74. package/build/modules/encryption.js +4 -26
  75. package/build/modules/env/editor.js +2 -9
  76. package/build/modules/env/main.js +2 -28
  77. package/build/modules/events.js +4 -9
  78. package/build/modules/hash/drivers/argon.js +2 -9
  79. package/build/modules/hash/drivers/bcrypt.js +2 -20
  80. package/build/modules/hash/drivers/scrypt.js +2 -9
  81. package/build/modules/hash/main.js +6 -28
  82. package/build/modules/hash/phc_formatter.js +2 -9
  83. package/build/modules/health.js +2 -9
  84. package/build/modules/http/main.js +4 -15
  85. package/build/modules/http/url_builder_client.js +2 -9
  86. package/build/modules/logger.d.ts +30 -0
  87. package/build/modules/logger.js +4 -9
  88. package/build/modules/repl.js +4 -9
  89. package/build/modules/transformers/main.js +4 -9
  90. package/build/providers/app_provider.js +147 -359
  91. package/build/providers/edge_provider.js +97 -165
  92. package/build/providers/hash_provider.js +29 -91
  93. package/build/providers/repl_provider.js +61 -152
  94. package/build/providers/vinejs_provider.d.ts +1 -1
  95. package/build/providers/vinejs_provider.js +20 -66
  96. package/build/repl-CumYg2V_.js +5 -0
  97. package/build/services/ace.js +2 -17
  98. package/build/services/app.js +2 -21
  99. package/build/services/config.js +2 -13
  100. package/build/services/dumper.js +5 -21
  101. package/build/services/emitter.js +2 -14
  102. package/build/services/encryption.js +2 -14
  103. package/build/services/hash.js +2 -14
  104. package/build/services/logger.js +2 -14
  105. package/build/services/repl.js +2 -14
  106. package/build/services/router.js +2 -14
  107. package/build/services/server.js +2 -14
  108. package/build/services/test_utils.js +2 -17
  109. package/build/services/url_builder.js +5 -17
  110. package/build/src/exceptions.js +2 -49
  111. package/build/src/helpers/assert.js +2 -55
  112. package/build/src/helpers/http.js +2 -28
  113. package/build/src/helpers/is.js +3 -31
  114. package/build/src/helpers/main.js +5 -52
  115. package/build/src/helpers/string.js +2 -78
  116. package/build/src/helpers/types.js +26 -135
  117. package/build/src/helpers/verification_token.js +2 -120
  118. package/build/src/test_utils/main.js +5 -77
  119. package/build/src/types.js +0 -8
  120. package/build/src/vine.js +2 -105
  121. package/build/string-CJ7ewUFq.js +28 -0
  122. package/build/test_utils-c_TEaEHW.js +10 -0
  123. package/build/toolkit/main.js +19 -21
  124. package/build/types/ace.js +2 -9
  125. package/build/types/app.js +2 -9
  126. package/build/types/bodyparser.js +2 -9
  127. package/build/types/common.js +2 -9
  128. package/build/types/container.js +2 -9
  129. package/build/types/encryption.js +2 -9
  130. package/build/types/events.js +2 -9
  131. package/build/types/hash.js +2 -9
  132. package/build/types/health.js +2 -9
  133. package/build/types/helpers.js +0 -8
  134. package/build/types/http.js +2 -9
  135. package/build/types/logger.js +2 -9
  136. package/build/types/repl.js +2 -9
  137. package/build/types/transformers.js +2 -9
  138. package/build/utils-CNQ4tlGM.js +41 -0
  139. package/build/verification_token-DXsW81rl.js +46 -0
  140. package/build/vine-Bt4ymkM0.js +32 -0
  141. package/package.json +81 -31
  142. package/build/modules/ace/commands.js +0 -157
  143. package/build/modules/ace/create_kernel.js +0 -91
  144. package/build/modules/ace/kernel.js +0 -40
  145. package/build/modules/dumper/define_config.js +0 -36
  146. package/build/modules/dumper/dumper.js +0 -266
  147. package/build/modules/dumper/errors.js +0 -119
  148. package/build/modules/hash/define_config.js +0 -125
  149. package/build/modules/http/request_validator.js +0 -100
  150. package/build/src/assembler_hooks/index_entities.js +0 -112
  151. package/build/src/cli_formatters/routes_list.js +0 -397
  152. package/build/src/config_provider.js +0 -71
  153. package/build/src/debug.js +0 -25
  154. package/build/src/ignitor/ace.js +0 -102
  155. package/build/src/ignitor/http.js +0 -159
  156. package/build/src/ignitor/main.js +0 -124
  157. package/build/src/ignitor/test.js +0 -66
  158. package/build/src/test_utils/http.js +0 -82
  159. package/build/src/utils.js +0 -114
  160. package/build/stubs/main.js +0 -9
  161. package/build/toolkit/commands/index_commands.js +0 -30
  162. /package/build/{stubs/make → make}/command/main.stub +0 -0
  163. /package/build/{stubs/make → make}/controller/actions.stub +0 -0
  164. /package/build/{stubs/make → make}/controller/api.stub +0 -0
  165. /package/build/{stubs/make → make}/controller/main.stub +0 -0
  166. /package/build/{stubs/make → make}/controller/resource.stub +0 -0
  167. /package/build/{stubs/make → make}/event/main.stub +0 -0
  168. /package/build/{stubs/make → make}/exception/main.stub +0 -0
  169. /package/build/{stubs/make → make}/health/controller.stub +0 -0
  170. /package/build/{stubs/make → make}/health/main.stub +0 -0
  171. /package/build/{stubs/make → make}/listener/for_event.stub +0 -0
  172. /package/build/{stubs/make → make}/listener/main.stub +0 -0
  173. /package/build/{stubs/make → make}/middleware/main.stub +0 -0
  174. /package/build/{stubs/make → make}/preload/main.stub +0 -0
  175. /package/build/{stubs/make → make}/provider/main.stub +0 -0
  176. /package/build/{stubs/make → make}/service/main.stub +0 -0
  177. /package/build/{stubs/make → make}/test/main.stub +0 -0
  178. /package/build/{stubs/make → make}/transformer/main.stub +0 -0
  179. /package/build/{stubs/make → make}/validator/main.stub +0 -0
  180. /package/build/{stubs/make → make}/validator/resource.stub +0 -0
  181. /package/build/{stubs/make → make}/view/main.stub +0 -0
@@ -1,57 +1,16 @@
1
- /*
2
- * @adonisjs/core
3
- *
4
- * (c) AdonisJS
5
- *
6
- * For the full copyright and license information, please view the LICENSE
7
- * file that was distributed with this source code.
8
- */
9
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
10
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1
+ import { t as stubsRoot } from "../../main-kn40V-hF.js";
2
+ import { f as BaseCommand, o as args } from "../../main-BWftwyAK.js";
3
+ import { t as __decorate } from "../../decorate-DM0Sx1ye.js";
4
+ var MakeView = class extends BaseCommand {
5
+ static commandName = "make:view";
6
+ static description = "Create a new Edge.js template file";
7
+ stubPath = "make/view/main.stub";
8
+ async run() {
9
+ await (await this.createCodemods()).makeUsingStub(stubsRoot, this.stubPath, {
10
+ flags: this.parsed.flags,
11
+ entity: this.app.generators.createEntity(this.name)
12
+ });
13
+ }
14
14
  };
15
- import { stubsRoot } from "../../stubs/main.js";
16
- import { args, BaseCommand } from "../../modules/ace/main.js";
17
- /**
18
- * Command to create a new Edge.js template file.
19
- * Edge templates are used for rendering HTML views in your web application,
20
- * supporting layouts, partials, components, and template inheritance.
21
- *
22
- * @example
23
- * ```
24
- * ace make:view home
25
- * ace make:view users/profile
26
- * ace make:view components/navbar
27
- * ace make:view layouts/app
28
- * ```
29
- */
30
- export default class MakeView extends BaseCommand {
31
- /**
32
- * The command name
33
- */
34
- static commandName = 'make:view';
35
- /**
36
- * The command description
37
- */
38
- static description = 'Create a new Edge.js template file';
39
- /**
40
- * The stub template file to use for generating the Edge template
41
- */
42
- stubPath = 'make/view/main.stub';
43
- /**
44
- * Execute the command to create a new Edge.js template file.
45
- * Generates the template file in the views directory.
46
- */
47
- async run() {
48
- const codemods = await this.createCodemods();
49
- await codemods.makeUsingStub(stubsRoot, this.stubPath, {
50
- flags: this.parsed.flags,
51
- entity: this.app.generators.createEntity(this.name),
52
- });
53
- }
54
- }
55
- __decorate([
56
- args.string({ description: 'Name of the template' })
57
- ], MakeView.prototype, "name", void 0);
15
+ __decorate([args.string({ description: "Name of the template" })], MakeView.prototype, "name", void 0);
16
+ export { MakeView as default };
@@ -1,50 +1,17 @@
1
- /*
2
- * @adonisjs/core
3
- *
4
- * (c) AdonisJS
5
- *
6
- * For the full copyright and license information, please view the LICENSE
7
- * file that was distributed with this source code.
8
- */
9
- import { BaseCommand } from "../modules/ace/main.js";
10
- /**
11
- * Command to start an interactive REPL (Read-Eval-Print Loop) session for AdonisJS.
12
- * The REPL provides a command-line interface where you can execute JavaScript code
13
- * in the context of your AdonisJS application, allowing you to interact with models,
14
- * services, and other application components in real-time.
15
- *
16
- * @example
17
- * ```
18
- * ace repl
19
- * ```
20
- */
21
- export default class ReplCommand extends BaseCommand {
22
- /**
23
- * The command name
24
- */
25
- static commandName = 'repl';
26
- /**
27
- * The command description
28
- */
29
- static description = 'Start a new REPL session';
30
- /**
31
- * Command options configuration.
32
- * Requires the application to be started and keeps the process alive.
33
- */
34
- static options = {
35
- startApp: true,
36
- staysAlive: true,
37
- };
38
- /**
39
- * Execute the command to start the REPL server.
40
- * Creates a REPL instance from the container and sets up an exit handler
41
- * that properly terminates the application when the REPL session ends.
42
- */
43
- async run() {
44
- const repl = await this.app.container.make('repl');
45
- repl.start();
46
- repl.server.on('exit', async () => {
47
- await this.terminate();
48
- });
49
- }
50
- }
1
+ import { f as BaseCommand } from "../main-BWftwyAK.js";
2
+ var ReplCommand = class extends BaseCommand {
3
+ static commandName = "repl";
4
+ static description = "Start a new REPL session";
5
+ static options = {
6
+ startApp: true,
7
+ staysAlive: true
8
+ };
9
+ async run() {
10
+ const repl = await this.app.container.make("repl");
11
+ repl.start();
12
+ repl.server.on("exit", async () => {
13
+ await this.terminate();
14
+ });
15
+ }
16
+ };
17
+ export { ReplCommand as default };
@@ -1,151 +1,81 @@
1
- /*
2
- * @adonisjs/core
3
- *
4
- * (c) AdonisJS
5
- *
6
- * For the full copyright and license information, please view the LICENSE
7
- * file that was distributed with this source code.
8
- */
9
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
10
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1
+ import { t as importAssembler } from "../utils-CNQ4tlGM.js";
2
+ import { f as BaseCommand, l as flags } from "../main-BWftwyAK.js";
3
+ import { t as __decorate } from "../decorate-DM0Sx1ye.js";
4
+ var Serve = class extends BaseCommand {
5
+ static commandName = "serve";
6
+ static description = "Start the development HTTP server along with the file watcher to perform restarts on file change";
7
+ static help = [
8
+ "Start the development server with file watcher using the following command.",
9
+ "```",
10
+ "{{ binaryName }} serve --watch",
11
+ "```",
12
+ "",
13
+ "You can also start the server with HMR support using the following command.",
14
+ "```",
15
+ "{{ binaryName }} serve --hmr",
16
+ "```",
17
+ "",
18
+ "The assets bundler dev server runs automatically after detecting vite config or webpack config files",
19
+ "You may pass vite CLI args using the --assets-args command line flag.",
20
+ "```",
21
+ "{{ binaryName }} serve --assets-args=\"--debug --base=/public\"",
22
+ "```"
23
+ ];
24
+ static options = { staysAlive: true };
25
+ #logMissingDevelopmentDependency(dependency) {
26
+ this.logger.error([
27
+ `Cannot find package "${dependency}"`,
28
+ "",
29
+ `The "${dependency}" package is a development dependency and therefore you should use the serve command during development only.`,
30
+ "",
31
+ "If you are running your application in production, then use \"node bin/server.js\" command to start the HTTP server"
32
+ ].join("\n"));
33
+ }
34
+ async run() {
35
+ const assembler = await importAssembler(this.app);
36
+ if (!assembler) {
37
+ this.#logMissingDevelopmentDependency("@adonisjs/assembler");
38
+ this.exitCode = 1;
39
+ return;
40
+ }
41
+ if (this.watch && this.hmr) {
42
+ this.logger.error("Cannot use --watch and --hmr flags together. Choose one of them");
43
+ this.exitCode = 1;
44
+ return;
45
+ }
46
+ this.devServer = new assembler.DevServer(this.app.appRoot, {
47
+ hmr: this.hmr === true ? true : false,
48
+ clearScreen: this.clear === false ? false : true,
49
+ nodeArgs: this.parsed.nodeArgs,
50
+ scriptArgs: [],
51
+ metaFiles: this.app.rcFile.metaFiles,
52
+ hooks: this.app.rcFile.hooks
53
+ });
54
+ this.devServer.ui.logger = this.logger;
55
+ this.devServer.onClose((exitCode) => {
56
+ this.exitCode = exitCode;
57
+ this.terminate();
58
+ });
59
+ this.devServer.onError(() => {
60
+ this.exitCode = 1;
61
+ this.terminate();
62
+ });
63
+ if (this.watch) await this.devServer.startAndWatch({ poll: this.poll || false });
64
+ else await this.devServer.start();
65
+ }
14
66
  };
15
- import { importAssembler } from "../src/utils.js";
16
- import { BaseCommand, flags } from "../modules/ace/main.js";
17
- /**
18
- * Serve command is used to run the AdonisJS HTTP server during development. The
19
- * command under the hood runs the "bin/server.ts" file and watches for file
20
- * system changes
21
- *
22
- * @example
23
- * ```
24
- * ace serve
25
- * ace serve --watch
26
- * ace serve --hmr
27
- * ace serve --poll
28
- * ace serve --no-clear
29
- * ```
30
- */
31
- export default class Serve extends BaseCommand {
32
- /**
33
- * The command name
34
- */
35
- static commandName = 'serve';
36
- /**
37
- * The command description
38
- */
39
- static description = 'Start the development HTTP server along with the file watcher to perform restarts on file change';
40
- /**
41
- * Help text for the command
42
- */
43
- static help = [
44
- 'Start the development server with file watcher using the following command.',
45
- '```',
46
- '{{ binaryName }} serve --watch',
47
- '```',
48
- '',
49
- 'You can also start the server with HMR support using the following command.',
50
- '```',
51
- '{{ binaryName }} serve --hmr',
52
- '```',
53
- '',
54
- 'The assets bundler dev server runs automatically after detecting vite config or webpack config files',
55
- 'You may pass vite CLI args using the --assets-args command line flag.',
56
- '```',
57
- '{{ binaryName }} serve --assets-args="--debug --base=/public"',
58
- '```',
59
- ];
60
- /**
61
- * Command options configuration
62
- */
63
- static options = {
64
- staysAlive: true,
65
- };
66
- /**
67
- * Log a development dependency is missing
68
- *
69
- * @param dependency - The name of the missing dependency
70
- */
71
- #logMissingDevelopmentDependency(dependency) {
72
- this.logger.error([
73
- `Cannot find package "${dependency}"`,
74
- '',
75
- `The "${dependency}" package is a development dependency and therefore you should use the serve command during development only.`,
76
- '',
77
- 'If you are running your application in production, then use "node bin/server.js" command to start the HTTP server',
78
- ].join('\n'));
79
- }
80
- /**
81
- * Runs the HTTP server
82
- */
83
- async run() {
84
- const assembler = await importAssembler(this.app);
85
- if (!assembler) {
86
- this.#logMissingDevelopmentDependency('@adonisjs/assembler');
87
- this.exitCode = 1;
88
- return;
89
- }
90
- if (this.watch && this.hmr) {
91
- this.logger.error('Cannot use --watch and --hmr flags together. Choose one of them');
92
- this.exitCode = 1;
93
- return;
94
- }
95
- this.devServer = new assembler.DevServer(this.app.appRoot, {
96
- hmr: this.hmr === true ? true : false,
97
- clearScreen: this.clear === false ? false : true,
98
- nodeArgs: this.parsed.nodeArgs,
99
- scriptArgs: [],
100
- metaFiles: this.app.rcFile.metaFiles,
101
- hooks: this.app.rcFile.hooks,
102
- });
103
- /**
104
- * Share command logger with assembler, so that CLI flags like --no-ansi has
105
- * similar impact for assembler logs as well.
106
- */
107
- this.devServer.ui.logger = this.logger;
108
- /**
109
- * Exit command when the dev server is closed
110
- */
111
- this.devServer.onClose((exitCode) => {
112
- this.exitCode = exitCode;
113
- this.terminate();
114
- });
115
- /**
116
- * Exit command when the dev server crashes
117
- */
118
- this.devServer.onError(() => {
119
- this.exitCode = 1;
120
- this.terminate();
121
- });
122
- /**
123
- * Start the development server
124
- */
125
- if (this.watch) {
126
- await this.devServer.startAndWatch({ poll: this.poll || false });
127
- }
128
- else {
129
- await this.devServer.start();
130
- }
131
- }
132
- }
133
- __decorate([
134
- flags.boolean({ description: 'Start the server with HMR support' })
135
- ], Serve.prototype, "hmr", void 0);
136
- __decorate([
137
- flags.boolean({
138
- description: 'Watch filesystem and restart the HTTP server on file change',
139
- alias: 'w',
140
- })
141
- ], Serve.prototype, "watch", void 0);
142
- __decorate([
143
- flags.boolean({ description: 'Use polling to detect filesystem changes', alias: 'p' })
144
- ], Serve.prototype, "poll", void 0);
145
- __decorate([
146
- flags.boolean({
147
- description: 'Clear the terminal for new logs after file change',
148
- showNegatedVariantInHelp: true,
149
- default: true,
150
- })
151
- ], Serve.prototype, "clear", void 0);
67
+ __decorate([flags.boolean({ description: "Start the server with HMR support" })], Serve.prototype, "hmr", void 0);
68
+ __decorate([flags.boolean({
69
+ description: "Watch filesystem and restart the HTTP server on file change",
70
+ alias: "w"
71
+ })], Serve.prototype, "watch", void 0);
72
+ __decorate([flags.boolean({
73
+ description: "Use polling to detect filesystem changes",
74
+ alias: "p"
75
+ })], Serve.prototype, "poll", void 0);
76
+ __decorate([flags.boolean({
77
+ description: "Clear the terminal for new logs after file change",
78
+ showNegatedVariantInHelp: true,
79
+ default: true
80
+ })], Serve.prototype, "clear", void 0);
81
+ export { Serve as default };
@@ -1,203 +1,93 @@
1
- /*
2
- * @adonisjs/core
3
- *
4
- * (c) AdonisJS
5
- *
6
- * For the full copyright and license information, please view the LICENSE
7
- * file that was distributed with this source code.
8
- */
9
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
10
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
- return c > 3 && r && Object.defineProperty(target, key, r), r;
1
+ import { t as importAssembler } from "../utils-CNQ4tlGM.js";
2
+ import { f as BaseCommand, l as flags, o as args } from "../main-BWftwyAK.js";
3
+ import { t as __decorate } from "../decorate-DM0Sx1ye.js";
4
+ var Test = class extends BaseCommand {
5
+ static commandName = "test";
6
+ static description = "Run tests along with the file watcher to re-run tests on file change";
7
+ static options = {
8
+ allowUnknownFlags: true,
9
+ staysAlive: true
10
+ };
11
+ #logMissingDevelopmentDependency(dependency) {
12
+ this.logger.error([
13
+ `Cannot find package "${dependency}"`,
14
+ "",
15
+ `The "${dependency}" package is a development dependency and therefore you should run tests with development dependencies installed.`,
16
+ "",
17
+ "If you are run tests inside a CI, make sure the NODE_ENV is set to \"development\""
18
+ ].join("\n"));
19
+ }
20
+ #getPassthroughFlags() {
21
+ return this.parsed.unknownFlags.map((flag) => {
22
+ const value = this.parsed.flags[flag];
23
+ if (value === true) return [`--${flag}`];
24
+ if (Array.isArray(value)) return value.map((v) => [`--${flag}`, v]);
25
+ return [`--${flag}`, value];
26
+ }).flat(2);
27
+ }
28
+ async run() {
29
+ process.env.NODE_ENV = "test";
30
+ const assembler = await importAssembler(this.app);
31
+ if (!assembler) {
32
+ this.#logMissingDevelopmentDependency("@adonisjs/assembler");
33
+ this.exitCode = 1;
34
+ return;
35
+ }
36
+ this.testsRunner = new assembler.TestRunner(this.app.appRoot, {
37
+ clearScreen: this.clear === false ? false : true,
38
+ nodeArgs: this.parsed.nodeArgs,
39
+ scriptArgs: this.#getPassthroughFlags(),
40
+ filters: {
41
+ suites: this.suites,
42
+ files: this.files,
43
+ groups: this.groups,
44
+ tags: this.tags,
45
+ tests: this.tests
46
+ },
47
+ failed: this.failed,
48
+ retries: this.retries,
49
+ timeout: this.timeout,
50
+ reporters: this.reporters,
51
+ suites: this.app.rcFile.tests.suites.map((suite) => {
52
+ return {
53
+ name: suite.name,
54
+ files: suite.files
55
+ };
56
+ }),
57
+ env: { NODE_ENV: "test" },
58
+ hooks: this.app.rcFile.hooks,
59
+ metaFiles: this.app.rcFile.metaFiles
60
+ });
61
+ this.testsRunner.ui.logger = this.logger;
62
+ this.testsRunner.onClose((exitCode) => {
63
+ this.exitCode = exitCode;
64
+ this.terminate();
65
+ });
66
+ this.testsRunner.onError(() => {
67
+ this.exitCode = 1;
68
+ this.terminate();
69
+ });
70
+ if (this.watch) await this.testsRunner.runAndWatch({ poll: this.poll || false });
71
+ else await this.testsRunner.run();
72
+ }
14
73
  };
15
- import { importAssembler } from "../src/utils.js";
16
- import { BaseCommand, flags, args } from "../modules/ace/main.js";
17
- /**
18
- * Command to run application tests using the Japa test runner.
19
- * Supports filtering tests by suites, files, tags, groups, and individual tests.
20
- * Can run in watch mode to automatically re-run tests when files change.
21
- *
22
- * @example
23
- * ```
24
- * ace test
25
- * ace test unit integration
26
- * ace test --watch
27
- * ace test --files=user.spec.ts
28
- * ace test --tags=slow --groups="User tests"
29
- * ace test --reporters=spec,dot
30
- * ace test --timeout=5000 --retries=2
31
- * ```
32
- */
33
- export default class Test extends BaseCommand {
34
- /**
35
- * The command name
36
- */
37
- static commandName = 'test';
38
- /**
39
- * The command description
40
- */
41
- static description = 'Run tests along with the file watcher to re-run tests on file change';
42
- /**
43
- * Command options configuration.
44
- * Allows unknown flags to be passed to Japa and keeps the process alive.
45
- */
46
- static options = {
47
- allowUnknownFlags: true,
48
- staysAlive: true,
49
- };
50
- /**
51
- * Log an error message when a required development dependency is missing.
52
- * Provides helpful instructions for resolving the issue.
53
- *
54
- * @param dependency - The name of the missing dependency package
55
- */
56
- #logMissingDevelopmentDependency(dependency) {
57
- this.logger.error([
58
- `Cannot find package "${dependency}"`,
59
- '',
60
- `The "${dependency}" package is a development dependency and therefore you should run tests with development dependencies installed.`,
61
- '',
62
- 'If you are run tests inside a CI, make sure the NODE_ENV is set to "development"',
63
- ].join('\n'));
64
- }
65
- /**
66
- * Collect unknown flags and format them to pass to the Japa test runner.
67
- * Handles boolean flags, arrays, and single values appropriately.
68
- *
69
- * @returns Array of formatted command-line arguments for Japa
70
- */
71
- #getPassthroughFlags() {
72
- return this.parsed.unknownFlags
73
- .map((flag) => {
74
- const value = this.parsed.flags[flag];
75
- /**
76
- * Not mentioning value when value is "true"
77
- */
78
- if (value === true) {
79
- return [`--${flag}`];
80
- }
81
- /**
82
- * Repeating flag multiple times when value is an array
83
- */
84
- if (Array.isArray(value)) {
85
- return value.map((v) => [`--${flag}`, v]);
86
- }
87
- return [`--${flag}`, value];
88
- })
89
- .flat(2);
90
- }
91
- /**
92
- * Execute the test command. Sets up the test runner with all configured options
93
- * and filters, then runs tests either once or in watch mode. Handles missing
94
- * dependencies and properly configures the test environment.
95
- */
96
- async run() {
97
- process.env.NODE_ENV = 'test';
98
- const assembler = await importAssembler(this.app);
99
- if (!assembler) {
100
- this.#logMissingDevelopmentDependency('@adonisjs/assembler');
101
- this.exitCode = 1;
102
- return;
103
- }
104
- this.testsRunner = new assembler.TestRunner(this.app.appRoot, {
105
- clearScreen: this.clear === false ? false : true,
106
- nodeArgs: this.parsed.nodeArgs,
107
- scriptArgs: this.#getPassthroughFlags(),
108
- filters: {
109
- suites: this.suites,
110
- files: this.files,
111
- groups: this.groups,
112
- tags: this.tags,
113
- tests: this.tests,
114
- },
115
- failed: this.failed,
116
- retries: this.retries,
117
- timeout: this.timeout,
118
- reporters: this.reporters,
119
- suites: this.app.rcFile.tests.suites.map((suite) => {
120
- return {
121
- name: suite.name,
122
- files: suite.files,
123
- };
124
- }),
125
- env: {
126
- NODE_ENV: 'test',
127
- },
128
- hooks: this.app.rcFile.hooks,
129
- metaFiles: this.app.rcFile.metaFiles,
130
- });
131
- /**
132
- * Share command logger with assembler, so that CLI flags like --no-ansi has
133
- * similar impact for assembler logs as well.
134
- */
135
- this.testsRunner.ui.logger = this.logger;
136
- /**
137
- * Exit command when the test runner is closed
138
- */
139
- this.testsRunner.onClose((exitCode) => {
140
- this.exitCode = exitCode;
141
- this.terminate();
142
- });
143
- /**
144
- * Exit command when the dev server crashes
145
- */
146
- this.testsRunner.onError(() => {
147
- this.exitCode = 1;
148
- this.terminate();
149
- });
150
- /**
151
- * Start the test runner in watch mode
152
- */
153
- if (this.watch) {
154
- await this.testsRunner.runAndWatch({ poll: this.poll || false });
155
- }
156
- else {
157
- await this.testsRunner.run();
158
- }
159
- }
160
- }
161
- __decorate([
162
- args.spread({
163
- description: 'Mention suite names to run tests for selected suites',
164
- required: false,
165
- })
166
- ], Test.prototype, "suites", void 0);
167
- __decorate([
168
- flags.array({ description: 'Filter tests by the filename' })
169
- ], Test.prototype, "files", void 0);
170
- __decorate([
171
- flags.array({ description: 'Filter tests by tags' })
172
- ], Test.prototype, "tags", void 0);
173
- __decorate([
174
- flags.array({ description: 'Filter tests by parent group title' })
175
- ], Test.prototype, "groups", void 0);
176
- __decorate([
177
- flags.array({ description: 'Filter tests by test title' })
178
- ], Test.prototype, "tests", void 0);
179
- __decorate([
180
- flags.array({ description: 'Activate one or more test reporters' })
181
- ], Test.prototype, "reporters", void 0);
182
- __decorate([
183
- flags.boolean({ description: 'Watch filesystem and re-run tests on file change' })
184
- ], Test.prototype, "watch", void 0);
185
- __decorate([
186
- flags.boolean({ description: 'Use polling to detect filesystem changes' })
187
- ], Test.prototype, "poll", void 0);
188
- __decorate([
189
- flags.number({ description: 'Define default timeout for all tests' })
190
- ], Test.prototype, "timeout", void 0);
191
- __decorate([
192
- flags.number({ description: 'Define default retries for all tests' })
193
- ], Test.prototype, "retries", void 0);
194
- __decorate([
195
- flags.boolean({ description: 'Execute tests failed during the last run' })
196
- ], Test.prototype, "failed", void 0);
197
- __decorate([
198
- flags.boolean({
199
- description: 'Clear the terminal for new logs after file change',
200
- showNegatedVariantInHelp: true,
201
- default: true,
202
- })
203
- ], Test.prototype, "clear", void 0);
74
+ __decorate([args.spread({
75
+ description: "Mention suite names to run tests for selected suites",
76
+ required: false
77
+ })], Test.prototype, "suites", void 0);
78
+ __decorate([flags.array({ description: "Filter tests by the filename" })], Test.prototype, "files", void 0);
79
+ __decorate([flags.array({ description: "Filter tests by tags" })], Test.prototype, "tags", void 0);
80
+ __decorate([flags.array({ description: "Filter tests by parent group title" })], Test.prototype, "groups", void 0);
81
+ __decorate([flags.array({ description: "Filter tests by test title" })], Test.prototype, "tests", void 0);
82
+ __decorate([flags.array({ description: "Activate one or more test reporters" })], Test.prototype, "reporters", void 0);
83
+ __decorate([flags.boolean({ description: "Watch filesystem and re-run tests on file change" })], Test.prototype, "watch", void 0);
84
+ __decorate([flags.boolean({ description: "Use polling to detect filesystem changes" })], Test.prototype, "poll", void 0);
85
+ __decorate([flags.number({ description: "Define default timeout for all tests" })], Test.prototype, "timeout", void 0);
86
+ __decorate([flags.number({ description: "Define default retries for all tests" })], Test.prototype, "retries", void 0);
87
+ __decorate([flags.boolean({ description: "Execute tests failed during the last run" })], Test.prototype, "failed", void 0);
88
+ __decorate([flags.boolean({
89
+ description: "Clear the terminal for new logs after file change",
90
+ showNegatedVariantInHelp: true,
91
+ default: true
92
+ })], Test.prototype, "clear", void 0);
93
+ export { Test as default };
@@ -0,0 +1,5 @@
1
+ import { n as __reExport } from "./chunk-MjwdjG2f.js";
2
+ var config_exports = {};
3
+ import * as import___adonisjs_config from "@adonisjs/config";
4
+ __reExport(config_exports, import___adonisjs_config);
5
+ export { config_exports as t };