@adonisjs/assembler 6.1.3-5 → 6.1.3-7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.d.ts +0 -1
- package/build/index.js +8 -0
- package/build/src/assets_dev_server.d.ts +22 -1
- package/build/src/assets_dev_server.js +63 -0
- package/build/src/bundler.d.ts +9 -1
- package/build/src/bundler.js +73 -1
- package/build/src/dev_server.d.ts +28 -1
- package/build/src/dev_server.js +83 -0
- package/build/src/helpers.d.ts +31 -1
- package/build/src/helpers.js +56 -0
- package/build/src/test_runner.d.ts +28 -1
- package/build/src/test_runner.js +94 -4
- package/build/src/types.d.ts +32 -2
- package/build/src/types.js +8 -0
- package/package.json +35 -62
- package/build/index.d.ts.map +0 -1
- package/build/src/assets_dev_server.d.ts.map +0 -1
- package/build/src/bundler.d.ts.map +0 -1
- package/build/src/dev_server.d.ts.map +0 -1
- package/build/src/helpers.d.ts.map +0 -1
- package/build/src/test_runner.d.ts.map +0 -1
- package/build/src/types.d.ts.map +0 -1
- package/index.ts +0 -12
- package/src/assets_dev_server.ts +0 -182
- package/src/bundler.ts +0 -267
- package/src/dev_server.ts +0 -306
- package/src/helpers.ts +0 -162
- package/src/test_runner.ts +0 -338
- package/src/types.ts +0 -110
package/build/src/helpers.js
CHANGED
|
@@ -1,13 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/assembler
|
|
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
|
+
*/
|
|
1
9
|
import getRandomPort from 'get-port';
|
|
2
10
|
import { fileURLToPath } from 'node:url';
|
|
3
11
|
import { execaNode, execa } from 'execa';
|
|
4
12
|
import { EnvLoader, EnvParser } from '@adonisjs/env';
|
|
5
13
|
import { ConfigParser, Watcher } from '@poppinss/chokidar-ts';
|
|
14
|
+
/**
|
|
15
|
+
* Default set of args to pass in order to run TypeScript
|
|
16
|
+
* source. Used by "run" and "runNode" scripts
|
|
17
|
+
*/
|
|
6
18
|
const DEFAULT_NODE_ARGS = [
|
|
19
|
+
// Use ts-node/esm loader. The project must install it
|
|
7
20
|
'--loader=ts-node/esm',
|
|
21
|
+
// Disable annonying warnings
|
|
8
22
|
'--no-warnings',
|
|
23
|
+
// Enable expiremental meta resolve for cases where someone uses magic import string
|
|
9
24
|
'--experimental-import-meta-resolve',
|
|
10
25
|
];
|
|
26
|
+
/**
|
|
27
|
+
* Parses tsconfig.json and prints errors using typescript compiler
|
|
28
|
+
* host
|
|
29
|
+
*/
|
|
11
30
|
export function parseConfig(cwd, ts) {
|
|
12
31
|
const { config, error } = new ConfigParser(cwd, 'tsconfig.json', ts).parse();
|
|
13
32
|
if (error) {
|
|
@@ -22,6 +41,9 @@ export function parseConfig(cwd, ts) {
|
|
|
22
41
|
}
|
|
23
42
|
return config;
|
|
24
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Runs a Node.js script as a child process and inherits the stdio streams
|
|
46
|
+
*/
|
|
25
47
|
export function runNode(cwd, options) {
|
|
26
48
|
const childProcess = execaNode(options.script, options.scriptArgs, {
|
|
27
49
|
nodeOptions: DEFAULT_NODE_ARGS.concat(options.nodeArgs),
|
|
@@ -38,6 +60,9 @@ export function runNode(cwd, options) {
|
|
|
38
60
|
});
|
|
39
61
|
return childProcess;
|
|
40
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Runs a script as a child process and inherits the stdio streams
|
|
65
|
+
*/
|
|
41
66
|
export function run(cwd, options) {
|
|
42
67
|
const childProcess = execa(options.script, options.scriptArgs, {
|
|
43
68
|
preferLocal: true,
|
|
@@ -53,6 +78,9 @@ export function run(cwd, options) {
|
|
|
53
78
|
});
|
|
54
79
|
return childProcess;
|
|
55
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Watches the file system using tsconfig file
|
|
83
|
+
*/
|
|
56
84
|
export function watch(cwd, ts, options) {
|
|
57
85
|
const config = parseConfig(cwd, ts);
|
|
58
86
|
if (!config) {
|
|
@@ -62,19 +90,44 @@ export function watch(cwd, ts, options) {
|
|
|
62
90
|
const chokidar = watcher.watch(['.'], { usePolling: options.poll });
|
|
63
91
|
return { watcher, chokidar };
|
|
64
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Check if file is an .env file
|
|
95
|
+
*/
|
|
65
96
|
export function isDotEnvFile(filePath) {
|
|
66
97
|
if (filePath === '.env') {
|
|
67
98
|
return true;
|
|
68
99
|
}
|
|
69
100
|
return filePath.includes('.env.');
|
|
70
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* Check if file is .adonisrc.json file
|
|
104
|
+
*/
|
|
71
105
|
export function isRcFile(filePath) {
|
|
72
106
|
return filePath === '.adonisrc.json';
|
|
73
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Returns the port to use after inspect the dot-env files inside
|
|
110
|
+
* a given directory.
|
|
111
|
+
*
|
|
112
|
+
* A random port is used when the specified port is in use. Following
|
|
113
|
+
* is the logic for finding a specified port.
|
|
114
|
+
*
|
|
115
|
+
* - The "process.env.PORT" value is used if exists.
|
|
116
|
+
* - The dot-env files are loaded using the "EnvLoader" and the PORT
|
|
117
|
+
* value is by iterating over all the loaded files. The iteration
|
|
118
|
+
* stops after first find.
|
|
119
|
+
*/
|
|
74
120
|
export async function getPort(cwd) {
|
|
121
|
+
/**
|
|
122
|
+
* Use existing port if exists
|
|
123
|
+
*/
|
|
75
124
|
if (process.env.PORT) {
|
|
76
125
|
return getRandomPort({ port: Number(process.env.PORT) });
|
|
77
126
|
}
|
|
127
|
+
/**
|
|
128
|
+
* Loop over files and use the port from their contents. Stops
|
|
129
|
+
* after first match
|
|
130
|
+
*/
|
|
78
131
|
const files = await new EnvLoader(cwd).load();
|
|
79
132
|
for (let file of files) {
|
|
80
133
|
const envVariables = new EnvParser(file.contents).parse();
|
|
@@ -82,5 +135,8 @@ export async function getPort(cwd) {
|
|
|
82
135
|
return getRandomPort({ port: Number(envVariables.PORT) });
|
|
83
136
|
}
|
|
84
137
|
}
|
|
138
|
+
/**
|
|
139
|
+
* Use 3333 as the port
|
|
140
|
+
*/
|
|
85
141
|
return getRandomPort({ port: 3333 });
|
|
86
142
|
}
|
|
@@ -2,15 +2,42 @@
|
|
|
2
2
|
import type tsStatic from 'typescript';
|
|
3
3
|
import { type Logger } from '@poppinss/cliui';
|
|
4
4
|
import type { TestRunnerOptions } from './types.js';
|
|
5
|
+
/**
|
|
6
|
+
* Exposes the API to start the development. Optionally, the watch API can be
|
|
7
|
+
* used to watch for file changes and restart the development server.
|
|
8
|
+
*
|
|
9
|
+
* The Dev server performs the following actions
|
|
10
|
+
*
|
|
11
|
+
* - Assigns a random PORT, when PORT inside .env file is in use
|
|
12
|
+
* - Uses tsconfig.json file to collect a list of files to watch.
|
|
13
|
+
* - Uses metaFiles from .adonisrc.json file to collect a list of files to watch.
|
|
14
|
+
* - Restart HTTP server on every file change.
|
|
15
|
+
*/
|
|
5
16
|
export declare class TestRunner {
|
|
6
17
|
#private;
|
|
7
18
|
constructor(cwd: URL, options: TestRunnerOptions);
|
|
19
|
+
/**
|
|
20
|
+
* Set a custom CLI UI logger
|
|
21
|
+
*/
|
|
8
22
|
setLogger(logger: Logger): this;
|
|
23
|
+
/**
|
|
24
|
+
* Add listener to get notified when dev server is
|
|
25
|
+
* closed
|
|
26
|
+
*/
|
|
9
27
|
onClose(callback: (exitCode: number) => any): this;
|
|
28
|
+
/**
|
|
29
|
+
* Add listener to get notified when dev server exists
|
|
30
|
+
* with an error
|
|
31
|
+
*/
|
|
10
32
|
onError(callback: (error: any) => any): this;
|
|
33
|
+
/**
|
|
34
|
+
* Runs tests
|
|
35
|
+
*/
|
|
11
36
|
run(): Promise<void>;
|
|
37
|
+
/**
|
|
38
|
+
* Run tests in watch mode
|
|
39
|
+
*/
|
|
12
40
|
runAndWatch(ts: typeof tsStatic, options?: {
|
|
13
41
|
poll: boolean;
|
|
14
42
|
}): Promise<void>;
|
|
15
43
|
}
|
|
16
|
-
//# sourceMappingURL=test_runner.d.ts.map
|
package/build/src/test_runner.js
CHANGED
|
@@ -1,8 +1,30 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* @adonisjs/assembler
|
|
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
|
+
*/
|
|
1
9
|
import picomatch from 'picomatch';
|
|
2
10
|
import { cliui } from '@poppinss/cliui';
|
|
3
11
|
import { AssetsDevServer } from './assets_dev_server.js';
|
|
4
12
|
import { getPort, isDotEnvFile, runNode, watch } from './helpers.js';
|
|
13
|
+
/**
|
|
14
|
+
* Instance of CLIUI
|
|
15
|
+
*/
|
|
5
16
|
const ui = cliui();
|
|
17
|
+
/**
|
|
18
|
+
* Exposes the API to start the development. Optionally, the watch API can be
|
|
19
|
+
* used to watch for file changes and restart the development server.
|
|
20
|
+
*
|
|
21
|
+
* The Dev server performs the following actions
|
|
22
|
+
*
|
|
23
|
+
* - Assigns a random PORT, when PORT inside .env file is in use
|
|
24
|
+
* - Uses tsconfig.json file to collect a list of files to watch.
|
|
25
|
+
* - Uses metaFiles from .adonisrc.json file to collect a list of files to watch.
|
|
26
|
+
* - Restart HTTP server on every file change.
|
|
27
|
+
*/
|
|
6
28
|
export class TestRunner {
|
|
7
29
|
#cwd;
|
|
8
30
|
#logger = ui.logger;
|
|
@@ -10,12 +32,21 @@ export class TestRunner {
|
|
|
10
32
|
#scriptFile = 'bin/test.js';
|
|
11
33
|
#isMetaFile;
|
|
12
34
|
#isTestFile;
|
|
35
|
+
/**
|
|
36
|
+
* In watch mode, after a file is changed, we wait for the current
|
|
37
|
+
* set of tests to finish before triggering a re-run. Therefore,
|
|
38
|
+
* we use this flag to know if we are already busy in running
|
|
39
|
+
* tests and ignore file-changes.
|
|
40
|
+
*/
|
|
13
41
|
#isBusy = false;
|
|
14
42
|
#onError;
|
|
15
43
|
#onClose;
|
|
16
44
|
#testScript;
|
|
17
45
|
#watcher;
|
|
18
46
|
#assetsServer;
|
|
47
|
+
/**
|
|
48
|
+
* Getting reference to colors library from logger
|
|
49
|
+
*/
|
|
19
50
|
get #colors() {
|
|
20
51
|
return this.#logger.getColors();
|
|
21
52
|
}
|
|
@@ -33,6 +64,13 @@ export class TestRunner {
|
|
|
33
64
|
.map((suite) => suite.files)
|
|
34
65
|
.flat(1));
|
|
35
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* Converts all known filters to CLI args.
|
|
69
|
+
*
|
|
70
|
+
* The following code snippet may seem like repetitive code. But, it
|
|
71
|
+
* is done intentionally to have visibility around how each filter
|
|
72
|
+
* is converted to an arg.
|
|
73
|
+
*/
|
|
36
74
|
#convertFiltersToArgs(filters) {
|
|
37
75
|
const args = [];
|
|
38
76
|
if (filters.suites) {
|
|
@@ -58,17 +96,19 @@ export class TestRunner {
|
|
|
58
96
|
args.push('--ignore-tests');
|
|
59
97
|
args.push(filters.tests.join(','));
|
|
60
98
|
}
|
|
61
|
-
if (filters.match) {
|
|
62
|
-
args.push('--match');
|
|
63
|
-
args.push(filters.match.join(','));
|
|
64
|
-
}
|
|
65
99
|
return args;
|
|
66
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Conditionally clear the terminal screen
|
|
103
|
+
*/
|
|
67
104
|
#clearScreen() {
|
|
68
105
|
if (this.#options.clearScreen) {
|
|
69
106
|
process.stdout.write('\u001Bc');
|
|
70
107
|
}
|
|
71
108
|
}
|
|
109
|
+
/**
|
|
110
|
+
* Runs tests
|
|
111
|
+
*/
|
|
72
112
|
#runTests(port, filtersArgs, mode) {
|
|
73
113
|
this.#isBusy = true;
|
|
74
114
|
this.#testScript = runNode(this.#cwd, {
|
|
@@ -96,10 +136,17 @@ export class TestRunner {
|
|
|
96
136
|
this.#isBusy = false;
|
|
97
137
|
});
|
|
98
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Starts the assets server
|
|
141
|
+
*/
|
|
99
142
|
#startAssetsServer() {
|
|
100
143
|
this.#assetsServer = new AssetsDevServer(this.#cwd, this.#options.assets);
|
|
144
|
+
this.#assetsServer.setLogger(this.#logger);
|
|
101
145
|
this.#assetsServer.start();
|
|
102
146
|
}
|
|
147
|
+
/**
|
|
148
|
+
* Handles a non TypeScript file change
|
|
149
|
+
*/
|
|
103
150
|
#handleFileChange(action, port, filters, relativePath) {
|
|
104
151
|
if (this.#isBusy) {
|
|
105
152
|
return;
|
|
@@ -110,12 +157,19 @@ export class TestRunner {
|
|
|
110
157
|
this.#runTests(port, filters, 'blocking');
|
|
111
158
|
}
|
|
112
159
|
}
|
|
160
|
+
/**
|
|
161
|
+
* Handles TypeScript source file change
|
|
162
|
+
*/
|
|
113
163
|
#handleSourceFileChange(action, port, filters, relativePath) {
|
|
114
164
|
if (this.#isBusy) {
|
|
115
165
|
return;
|
|
116
166
|
}
|
|
117
167
|
this.#clearScreen();
|
|
118
168
|
this.#logger.log(`${this.#colors.green(action)} ${relativePath}`);
|
|
169
|
+
/**
|
|
170
|
+
* If changed file is a test file after considering the initial filters,
|
|
171
|
+
* then only run that file
|
|
172
|
+
*/
|
|
119
173
|
if (this.#isTestFile(relativePath)) {
|
|
120
174
|
this.#runTests(port, this.#convertFiltersToArgs({
|
|
121
175
|
...this.#options.filters,
|
|
@@ -125,19 +179,33 @@ export class TestRunner {
|
|
|
125
179
|
}
|
|
126
180
|
this.#runTests(port, filters, 'blocking');
|
|
127
181
|
}
|
|
182
|
+
/**
|
|
183
|
+
* Set a custom CLI UI logger
|
|
184
|
+
*/
|
|
128
185
|
setLogger(logger) {
|
|
129
186
|
this.#logger = logger;
|
|
130
187
|
this.#assetsServer?.setLogger(logger);
|
|
131
188
|
return this;
|
|
132
189
|
}
|
|
190
|
+
/**
|
|
191
|
+
* Add listener to get notified when dev server is
|
|
192
|
+
* closed
|
|
193
|
+
*/
|
|
133
194
|
onClose(callback) {
|
|
134
195
|
this.#onClose = callback;
|
|
135
196
|
return this;
|
|
136
197
|
}
|
|
198
|
+
/**
|
|
199
|
+
* Add listener to get notified when dev server exists
|
|
200
|
+
* with an error
|
|
201
|
+
*/
|
|
137
202
|
onError(callback) {
|
|
138
203
|
this.#onError = callback;
|
|
139
204
|
return this;
|
|
140
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* Runs tests
|
|
208
|
+
*/
|
|
141
209
|
async run() {
|
|
142
210
|
const port = String(await getPort(this.#cwd));
|
|
143
211
|
const initialFilters = this.#convertFiltersToArgs(this.#options.filters);
|
|
@@ -146,6 +214,9 @@ export class TestRunner {
|
|
|
146
214
|
this.#logger.info('booting application to run tests...');
|
|
147
215
|
this.#runTests(port, initialFilters, 'nonblocking');
|
|
148
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Run tests in watch mode
|
|
219
|
+
*/
|
|
149
220
|
async runAndWatch(ts, options) {
|
|
150
221
|
const port = String(await getPort(this.#cwd));
|
|
151
222
|
const initialFilters = this.#convertFiltersToArgs(this.#options.filters);
|
|
@@ -153,24 +224,43 @@ export class TestRunner {
|
|
|
153
224
|
this.#startAssetsServer();
|
|
154
225
|
this.#logger.info('booting application to run tests...');
|
|
155
226
|
this.#runTests(port, initialFilters, 'blocking');
|
|
227
|
+
/**
|
|
228
|
+
* Create watcher using tsconfig.json file
|
|
229
|
+
*/
|
|
156
230
|
const output = watch(this.#cwd, ts, options || {});
|
|
157
231
|
if (!output) {
|
|
158
232
|
this.#onClose?.(1);
|
|
159
233
|
return;
|
|
160
234
|
}
|
|
235
|
+
/**
|
|
236
|
+
* Storing reference to watcher, so that we can close it
|
|
237
|
+
* when HTTP server exists with error
|
|
238
|
+
*/
|
|
161
239
|
this.#watcher = output.chokidar;
|
|
240
|
+
/**
|
|
241
|
+
* Notify the watcher is ready
|
|
242
|
+
*/
|
|
162
243
|
output.watcher.on('watcher:ready', () => {
|
|
163
244
|
this.#logger.info('watching file system for changes...');
|
|
164
245
|
});
|
|
246
|
+
/**
|
|
247
|
+
* Cleanup when watcher dies
|
|
248
|
+
*/
|
|
165
249
|
output.chokidar.on('error', (error) => {
|
|
166
250
|
this.#logger.warning('file system watcher failure');
|
|
167
251
|
this.#logger.fatal(error);
|
|
168
252
|
this.#onError?.(error);
|
|
169
253
|
output.chokidar.close();
|
|
170
254
|
});
|
|
255
|
+
/**
|
|
256
|
+
* Changes in TypeScript source file
|
|
257
|
+
*/
|
|
171
258
|
output.watcher.on('source:add', ({ relativePath }) => this.#handleSourceFileChange('add', port, initialFilters, relativePath));
|
|
172
259
|
output.watcher.on('source:change', ({ relativePath }) => this.#handleSourceFileChange('update', port, initialFilters, relativePath));
|
|
173
260
|
output.watcher.on('source:unlink', ({ relativePath }) => this.#handleSourceFileChange('delete', port, initialFilters, relativePath));
|
|
261
|
+
/**
|
|
262
|
+
* Changes in non-TypeScript source files
|
|
263
|
+
*/
|
|
174
264
|
output.watcher.on('add', ({ relativePath }) => this.#handleFileChange('add', port, initialFilters, relativePath));
|
|
175
265
|
output.watcher.on('change', ({ relativePath }) => this.#handleFileChange('update', port, initialFilters, relativePath));
|
|
176
266
|
output.watcher.on('unlink', ({ relativePath }) => this.#handleFileChange('delete', port, initialFilters, relativePath));
|
package/build/src/types.d.ts
CHANGED
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" resolution-mode="require"/>
|
|
2
|
+
/**
|
|
3
|
+
* Options needed to run a script file
|
|
4
|
+
*/
|
|
2
5
|
export type RunOptions = {
|
|
3
6
|
script: string;
|
|
4
7
|
scriptArgs: string[];
|
|
@@ -6,17 +9,29 @@ export type RunOptions = {
|
|
|
6
9
|
stdio?: 'pipe' | 'inherit';
|
|
7
10
|
env?: NodeJS.ProcessEnv;
|
|
8
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* Watcher options
|
|
14
|
+
*/
|
|
9
15
|
export type WatchOptions = {
|
|
10
16
|
poll?: boolean;
|
|
11
17
|
};
|
|
18
|
+
/**
|
|
19
|
+
* Meta file config defined in ".adonisrc.json" file
|
|
20
|
+
*/
|
|
12
21
|
export type MetaFile = {
|
|
13
22
|
pattern: string;
|
|
14
23
|
reloadServer: boolean;
|
|
15
24
|
};
|
|
25
|
+
/**
|
|
26
|
+
* Test suite defined in ".adonisrc.json" file
|
|
27
|
+
*/
|
|
16
28
|
export type Suite = {
|
|
17
29
|
files: string[];
|
|
18
30
|
name: string;
|
|
19
31
|
};
|
|
32
|
+
/**
|
|
33
|
+
* Options accepted by assets bundler
|
|
34
|
+
*/
|
|
20
35
|
export type AssetsBundlerOptions = {
|
|
21
36
|
serve: false;
|
|
22
37
|
args?: string[];
|
|
@@ -28,6 +43,9 @@ export type AssetsBundlerOptions = {
|
|
|
28
43
|
driver: string;
|
|
29
44
|
cmd: string;
|
|
30
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Options accepted by the dev server
|
|
48
|
+
*/
|
|
31
49
|
export type DevServerOptions = {
|
|
32
50
|
scriptArgs: string[];
|
|
33
51
|
nodeArgs: string[];
|
|
@@ -36,16 +54,26 @@ export type DevServerOptions = {
|
|
|
36
54
|
metaFiles?: MetaFile[];
|
|
37
55
|
assets?: AssetsBundlerOptions;
|
|
38
56
|
};
|
|
57
|
+
/**
|
|
58
|
+
* Options accepted by the test runner
|
|
59
|
+
*/
|
|
39
60
|
export type TestRunnerOptions = {
|
|
61
|
+
/**
|
|
62
|
+
* Filter arguments are provided as a key-value
|
|
63
|
+
* pair, so that we can mutate them (if needed)
|
|
64
|
+
*/
|
|
40
65
|
filters: Partial<{
|
|
41
66
|
tests: string[];
|
|
42
67
|
suites: string[];
|
|
43
68
|
groups: string[];
|
|
44
69
|
files: string[];
|
|
45
|
-
match: string[];
|
|
46
70
|
tags: string[];
|
|
47
71
|
ignoreTags: string[];
|
|
48
72
|
}>;
|
|
73
|
+
/**
|
|
74
|
+
* All other tags are provided as a collection of
|
|
75
|
+
* arguments
|
|
76
|
+
*/
|
|
49
77
|
scriptArgs: string[];
|
|
50
78
|
nodeArgs: string[];
|
|
51
79
|
clearScreen?: boolean;
|
|
@@ -54,8 +82,10 @@ export type TestRunnerOptions = {
|
|
|
54
82
|
assets?: AssetsBundlerOptions;
|
|
55
83
|
suites: Suite[];
|
|
56
84
|
};
|
|
85
|
+
/**
|
|
86
|
+
* Options accepted by the project bundler
|
|
87
|
+
*/
|
|
57
88
|
export type BundlerOptions = {
|
|
58
89
|
metaFiles?: MetaFile[];
|
|
59
90
|
assets?: AssetsBundlerOptions;
|
|
60
91
|
};
|
|
61
|
-
//# sourceMappingURL=types.d.ts.map
|
package/build/src/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adonisjs/assembler",
|
|
3
|
-
"version": "6.1.3-
|
|
3
|
+
"version": "6.1.3-7",
|
|
4
4
|
"description": "Provides utilities to run AdonisJS development server and build project for production",
|
|
5
5
|
"main": "build/index.js",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"files": [
|
|
8
|
-
"src",
|
|
9
|
-
"index.ts",
|
|
10
8
|
"build/src",
|
|
11
9
|
"build/index.d.ts",
|
|
12
|
-
"build/index.d.ts.map",
|
|
13
10
|
"build/index.js"
|
|
14
11
|
],
|
|
15
12
|
"exports": {
|
|
16
13
|
".": "./build/index.js",
|
|
17
14
|
"./types": "./build/src/types.js"
|
|
18
15
|
},
|
|
16
|
+
"engines": {
|
|
17
|
+
"node": ">=18.16.0"
|
|
18
|
+
},
|
|
19
19
|
"scripts": {
|
|
20
20
|
"pretest": "npm run lint",
|
|
21
|
-
"test": "cross-env NODE_DEBUG=chokidar:ts c8 npm run
|
|
21
|
+
"test": "cross-env NODE_DEBUG=chokidar:ts c8 npm run quick:test",
|
|
22
22
|
"lint": "eslint . --ext=.ts",
|
|
23
23
|
"clean": "del-cli build",
|
|
24
|
+
"typecheck": "tsc --noEmit",
|
|
24
25
|
"compile": "npm run lint && npm run clean && tsc",
|
|
25
26
|
"build": "npm run compile",
|
|
26
27
|
"release": "np",
|
|
@@ -28,7 +29,7 @@
|
|
|
28
29
|
"sync-labels": "github-label-sync --labels .github/labels.json adonisjs/assembler",
|
|
29
30
|
"format": "prettier --write .",
|
|
30
31
|
"prepublishOnly": "npm run build",
|
|
31
|
-
"
|
|
32
|
+
"quick:test": "node --loader=ts-node/esm bin/test.ts"
|
|
32
33
|
},
|
|
33
34
|
"keywords": [
|
|
34
35
|
"adonisjs",
|
|
@@ -38,40 +39,38 @@
|
|
|
38
39
|
"author": "virk,adonisjs",
|
|
39
40
|
"license": "MIT",
|
|
40
41
|
"devDependencies": {
|
|
41
|
-
"@
|
|
42
|
-
"@
|
|
43
|
-
"@
|
|
44
|
-
"@
|
|
45
|
-
"@
|
|
46
|
-
"@japa/
|
|
47
|
-
"@japa/
|
|
48
|
-
"@
|
|
49
|
-
"@
|
|
50
|
-
"
|
|
42
|
+
"@adonisjs/eslint-config": "^1.1.7",
|
|
43
|
+
"@adonisjs/prettier-config": "^1.1.7",
|
|
44
|
+
"@adonisjs/tsconfig": "^1.1.7",
|
|
45
|
+
"@commitlint/cli": "^17.6.6",
|
|
46
|
+
"@commitlint/config-conventional": "^17.6.6",
|
|
47
|
+
"@japa/assert": "^2.0.0-1",
|
|
48
|
+
"@japa/file-system": "^2.0.0-1",
|
|
49
|
+
"@japa/runner": "^3.0.0-3",
|
|
50
|
+
"@swc/core": "^1.3.67",
|
|
51
|
+
"@types/node": "^20.3.3",
|
|
52
|
+
"@types/picomatch": "^2.3.0",
|
|
53
|
+
"c8": "^8.0.0",
|
|
51
54
|
"cross-env": "^7.0.3",
|
|
52
55
|
"del-cli": "^5.0.0",
|
|
53
|
-
"eslint": "^8.
|
|
54
|
-
"eslint-config-prettier": "^8.8.0",
|
|
55
|
-
"eslint-plugin-adonis": "^3.0.3",
|
|
56
|
-
"eslint-plugin-prettier": "^4.2.1",
|
|
56
|
+
"eslint": "^8.44.0",
|
|
57
57
|
"github-label-sync": "^2.3.1",
|
|
58
58
|
"husky": "^8.0.3",
|
|
59
|
-
"np": "^
|
|
60
|
-
"p-event": "^
|
|
61
|
-
"prettier": "^2.8.
|
|
59
|
+
"np": "^8.0.4",
|
|
60
|
+
"p-event": "^6.0.0",
|
|
61
|
+
"prettier": "^2.8.8",
|
|
62
62
|
"ts-node": "^10.9.1",
|
|
63
|
-
"typescript": "^5.
|
|
63
|
+
"typescript": "^5.1.6"
|
|
64
64
|
},
|
|
65
65
|
"dependencies": {
|
|
66
|
-
"@adonisjs/env": "^4.2.0-
|
|
67
|
-
"@poppinss/chokidar-ts": "^4.1.0-
|
|
68
|
-
"@poppinss/cliui": "^6.1.1-
|
|
69
|
-
"
|
|
70
|
-
"cpy": "^9.0.1",
|
|
66
|
+
"@adonisjs/env": "^4.2.0-3",
|
|
67
|
+
"@poppinss/chokidar-ts": "^4.1.0-4",
|
|
68
|
+
"@poppinss/cliui": "^6.1.1-3",
|
|
69
|
+
"cpy": "^8.1.2",
|
|
71
70
|
"execa": "^7.0.0",
|
|
72
|
-
"get-port": "^
|
|
71
|
+
"get-port": "^7.0.0",
|
|
73
72
|
"picomatch": "^2.3.1",
|
|
74
|
-
"slash": "^5.
|
|
73
|
+
"slash": "^5.1.0"
|
|
75
74
|
},
|
|
76
75
|
"peerDependencies": {
|
|
77
76
|
"typescript": "^4.0.0 || ^5.0.0"
|
|
@@ -84,36 +83,6 @@
|
|
|
84
83
|
"url": "https://github.com/adonisjs/assembler/issues"
|
|
85
84
|
},
|
|
86
85
|
"homepage": "https://github.com/adonisjs/assembler#readme",
|
|
87
|
-
"eslintConfig": {
|
|
88
|
-
"extends": [
|
|
89
|
-
"plugin:adonis/typescriptPackage",
|
|
90
|
-
"prettier"
|
|
91
|
-
],
|
|
92
|
-
"plugins": [
|
|
93
|
-
"prettier"
|
|
94
|
-
],
|
|
95
|
-
"rules": {
|
|
96
|
-
"prettier/prettier": [
|
|
97
|
-
"error",
|
|
98
|
-
{
|
|
99
|
-
"endOfLine": "auto"
|
|
100
|
-
}
|
|
101
|
-
]
|
|
102
|
-
}
|
|
103
|
-
},
|
|
104
|
-
"eslintIgnore": [
|
|
105
|
-
"build"
|
|
106
|
-
],
|
|
107
|
-
"prettier": {
|
|
108
|
-
"trailingComma": "es5",
|
|
109
|
-
"semi": false,
|
|
110
|
-
"singleQuote": true,
|
|
111
|
-
"useTabs": false,
|
|
112
|
-
"quoteProps": "consistent",
|
|
113
|
-
"bracketSpacing": true,
|
|
114
|
-
"arrowParens": "always",
|
|
115
|
-
"printWidth": 100
|
|
116
|
-
},
|
|
117
86
|
"commitlint": {
|
|
118
87
|
"extends": [
|
|
119
88
|
"@commitlint/config-conventional"
|
|
@@ -139,5 +108,9 @@
|
|
|
139
108
|
"build/**",
|
|
140
109
|
"examples/**"
|
|
141
110
|
]
|
|
142
|
-
}
|
|
111
|
+
},
|
|
112
|
+
"eslintConfig": {
|
|
113
|
+
"extends": "@adonisjs/eslint-config/package"
|
|
114
|
+
},
|
|
115
|
+
"prettier": "@adonisjs/prettier-config"
|
|
143
116
|
}
|
package/build/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assets_dev_server.d.ts","sourceRoot":"","sources":["../../src/assets_dev_server.ts"],"names":[],"mappings":";AAUA,OAAO,EAAE,KAAK,MAAM,EAAS,MAAM,iBAAiB,CAAA;AAGpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAA;AAkBtD,qBAAa,eAAe;;gBAad,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,oBAAoB;IAgEpD,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,KAAK;IAwDL,IAAI;CAOL"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bundler.d.ts","sourceRoot":"","sources":["../../src/bundler.ts"],"names":[],"mappings":";AAYA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AAGtC,OAAO,EAAS,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAGpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAUhD,qBAAa,OAAO;;gBAcN,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,QAAQ,EAAE,OAAO,EAAE,cAAc;IAkIlE,SAAS,CAAC,MAAM,EAAE,MAAM;IAQlB,MAAM,CACV,WAAW,GAAE,OAAc,EAC3B,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,MAAc,GACtC,OAAO,CAAC,OAAO,CAAC;CAmFpB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dev_server.d.ts","sourceRoot":"","sources":["../../src/dev_server.ts"],"names":[],"mappings":";AAUA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAS,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAGpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAoBlD,qBAAa,SAAS;;gBAuBR,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,gBAAgB;IA6I/C,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,GAAG,IAAI;IASlD,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI;IAQtC,KAAK;IAUL,aAAa,CAAC,EAAE,EAAE,OAAO,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE;CAqErE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":";AAUA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AAItC,OAAO,EAAgB,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAmB1D,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,EAAE,EAAE,OAAO,QAAQ,0CAejE;AAKD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,UAAU,6CAgB7D;AAKD,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,6CAe3E;AAKD,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,EAAE,EAAE,EAAE,OAAO,QAAQ,EAAE,OAAO,EAAE,YAAY;;;cASlF;AAKD,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,WAM5C;AAKD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,WAExC;AAcD,wBAAsB,OAAO,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAwBvD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"test_runner.d.ts","sourceRoot":"","sources":["../../src/test_runner.ts"],"names":[],"mappings":";AAUA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAA;AAEtC,OAAO,EAAS,KAAK,MAAM,EAAE,MAAM,iBAAiB,CAAA;AAGpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAoBnD,qBAAa,UAAU;;gBA8BT,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,iBAAiB;IAmKhD,SAAS,CAAC,MAAM,EAAE,MAAM;IAUxB,OAAO,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,GAAG,IAAI;IASlD,OAAO,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,GAAG,GAAG,IAAI;IAQtC,GAAG;IAcH,WAAW,CAAC,EAAE,EAAE,OAAO,QAAQ,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE;CAoEnE"}
|
package/build/src/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAYA,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;CACxB,CAAA;AAKD,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAKD,MAAM,MAAM,QAAQ,GAAG;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,OAAO,CAAA;CACtB,CAAA;AAKD,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAKD,MAAM,MAAM,oBAAoB,GAC5B;IACE,KAAK,EAAE,KAAK,CAAA;IACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,GACD;IACE,KAAK,EAAE,IAAI,CAAA;IACX,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAKL,MAAM,MAAM,gBAAgB,GAAG;IAC7B,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,oBAAoB,CAAA;CAC9B,CAAA;AAKD,MAAM,MAAM,iBAAiB,GAAG;IAK9B,OAAO,EAAE,OAAO,CAAC;QACf,KAAK,EAAE,MAAM,EAAE,CAAA;QACf,MAAM,EAAE,MAAM,EAAE,CAAA;QAChB,MAAM,EAAE,MAAM,EAAE,CAAA;QAChB,KAAK,EAAE,MAAM,EAAE,CAAA;QACf,KAAK,EAAE,MAAM,EAAE,CAAA;QACf,IAAI,EAAE,MAAM,EAAE,CAAA;QACd,UAAU,EAAE,MAAM,EAAE,CAAA;KACrB,CAAC,CAAA;IAMF,UAAU,EAAE,MAAM,EAAE,CAAA;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;IACvB,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,oBAAoB,CAAA;IAC7B,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB,CAAA;AAKD,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAA;IACtB,MAAM,CAAC,EAAE,oBAAoB,CAAA;CAC9B,CAAA"}
|
package/index.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* @adonisjs/assembler
|
|
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
|
-
|
|
10
|
-
export { Bundler } from './src/bundler.js'
|
|
11
|
-
export { DevServer } from './src/dev_server.js'
|
|
12
|
-
export { TestRunner } from './src/test_runner.js'
|