@ryanatkn/gro 0.169.0 → 0.170.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/args.d.ts +15 -1
- package/dist/args.d.ts.map +1 -1
- package/dist/args.js +26 -0
- package/dist/package.d.ts.map +1 -1
- package/dist/package.js +16 -15
- package/dist/test.task.js +2 -2
- package/package.json +14 -14
- package/src/lib/args.ts +32 -1
- package/src/lib/package.ts +16 -15
- package/src/lib/test.task.ts +2 -2
package/dist/args.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { z } from 'zod';
|
|
|
6
6
|
* unless `invoke_task` is called with modified args.
|
|
7
7
|
* Upstream tasks can use listeners to respond to downstream events and values.
|
|
8
8
|
* It's a beautiful mutable spaghetti mess. cant get enough
|
|
9
|
-
* The raw CLI
|
|
9
|
+
* The raw CLI args are handled by `mri` - https://github.com/lukeed/mri
|
|
10
10
|
*/
|
|
11
11
|
export interface Args {
|
|
12
12
|
_?: Array<string>;
|
|
@@ -56,5 +56,19 @@ export declare const to_raw_rest_args: (argv?: string[]) => Array<string>;
|
|
|
56
56
|
*/
|
|
57
57
|
export declare const to_forwarded_args: (command: string, raw_rest_args?: Array<string>, cache?: Record<string, Args | undefined>) => Args;
|
|
58
58
|
export declare const to_forwarded_args_by_command: (raw_rest_args?: string[]) => Record<string, Args | undefined>;
|
|
59
|
+
/**
|
|
60
|
+
* Gets all args after the first `--` without assuming a command name.
|
|
61
|
+
* This is useful for tasks that want to forward args directly to a tool
|
|
62
|
+
* without requiring users to specify the tool name explicitly.
|
|
63
|
+
* Optionally strips a specific command name if present for backward compatibility.
|
|
64
|
+
* @example
|
|
65
|
+
* ```ts
|
|
66
|
+
* // `gro test -- --watch` → {watch: true}
|
|
67
|
+
* // `gro test -- foo.test.ts` → {_: ['foo.test.ts']}
|
|
68
|
+
* // `gro test -- vitest --watch` with command_to_strip='vitest' → {watch: true}
|
|
69
|
+
* to_implicit_forwarded_args('vitest')
|
|
70
|
+
* ```
|
|
71
|
+
*/
|
|
72
|
+
export declare const to_implicit_forwarded_args: (command_to_strip?: string, raw_rest_args?: string[]) => Args;
|
|
59
73
|
export declare const print_command_args: (serialized_args: Array<string>) => string;
|
|
60
74
|
//# sourceMappingURL=args.d.ts.map
|
package/dist/args.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"args.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/args.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAE3B;;;;;;;;GAQG;AACH,MAAM,WAAW,IAAI;IACpB,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;CACzB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAEjG,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GACtB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,EACjD,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,EAEhD,eAAe,OAAO,EACtB,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAClC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAiB/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,KAAG,KAAK,CAAC,MAAM,CAuBvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,eAAmB,KAAG;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAMhF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,eAAmB,KAAG,KAAK,CAAC,MAAM,CAGlE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC7B,SAAS,MAAM,EACf,gBAAgB,KAAK,CAAC,MAAM,CAAC,EAC7B,wCAAmD,KACjD,IAA4B,CAAC;AAEhC,eAAO,MAAM,4BAA4B,GACxC,wBAAkC,KAChC,MAAM,CAAC,MAAM,EAAE,IAAI,GAAG,SAAS,CAuCjC,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,KAAK,CAAC,MAAM,CAAC,KAAG,MAK1C,CAAC"}
|
|
1
|
+
{"version":3,"file":"args.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/args.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,CAAC,EAAC,MAAM,KAAK,CAAC;AAE3B;;;;;;;;GAQG;AACH,MAAM,WAAW,IAAI;IACpB,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;CACzB;AAED,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC;AAEjG,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,SAAS,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,UAAU,GACtB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,EACjD,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,IAAI,EAEhD,eAAe,OAAO,EACtB,QAAQ,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,KAClC,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAiB/B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,MAAM,IAAI,KAAG,KAAK,CAAC,MAAM,CAuBvD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GAAI,eAAmB,KAAG;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAMhF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,eAAmB,KAAG,KAAK,CAAC,MAAM,CAGlE,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAC7B,SAAS,MAAM,EACf,gBAAgB,KAAK,CAAC,MAAM,CAAC,EAC7B,wCAAmD,KACjD,IAA4B,CAAC;AAEhC,eAAO,MAAM,4BAA4B,GACxC,wBAAkC,KAChC,MAAM,CAAC,MAAM,EAAE,IAAI,GAAG,SAAS,CAuCjC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0BAA0B,GACtC,mBAAmB,MAAM,EACzB,wBAAkC,KAChC,IAaF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,KAAK,CAAC,MAAM,CAAC,KAAG,MAK1C,CAAC"}
|
package/dist/args.js
CHANGED
|
@@ -129,6 +129,32 @@ export const to_forwarded_args_by_command = (raw_rest_args = to_raw_rest_args())
|
|
|
129
129
|
}
|
|
130
130
|
return forwarded_args_by_command;
|
|
131
131
|
};
|
|
132
|
+
/**
|
|
133
|
+
* Gets all args after the first `--` without assuming a command name.
|
|
134
|
+
* This is useful for tasks that want to forward args directly to a tool
|
|
135
|
+
* without requiring users to specify the tool name explicitly.
|
|
136
|
+
* Optionally strips a specific command name if present for backward compatibility.
|
|
137
|
+
* @example
|
|
138
|
+
* ```ts
|
|
139
|
+
* // `gro test -- --watch` → {watch: true}
|
|
140
|
+
* // `gro test -- foo.test.ts` → {_: ['foo.test.ts']}
|
|
141
|
+
* // `gro test -- vitest --watch` with command_to_strip='vitest' → {watch: true}
|
|
142
|
+
* to_implicit_forwarded_args('vitest')
|
|
143
|
+
* ```
|
|
144
|
+
*/
|
|
145
|
+
export const to_implicit_forwarded_args = (command_to_strip, raw_rest_args = to_raw_rest_args()) => {
|
|
146
|
+
const start = raw_rest_args.indexOf('--');
|
|
147
|
+
if (start === -1)
|
|
148
|
+
return {};
|
|
149
|
+
let argv = raw_rest_args.slice(start + 1);
|
|
150
|
+
if (command_to_strip && argv[0] === command_to_strip) {
|
|
151
|
+
argv = argv.slice(1);
|
|
152
|
+
}
|
|
153
|
+
const args = mri(argv);
|
|
154
|
+
if (!args._.length)
|
|
155
|
+
delete args._;
|
|
156
|
+
return args;
|
|
157
|
+
};
|
|
132
158
|
export const print_command_args = (serialized_args) => st('gray', '[') +
|
|
133
159
|
st('magenta', 'running command') +
|
|
134
160
|
st('gray', ']') +
|
package/dist/package.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/package.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,4BAA4B,CAAC;AAEzD,eAAO,MAAM,YAAY,EAAE,YAkGnB,CAAC;AAET,eAAO,MAAM,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"../src/lib/","sources":["../src/lib/package.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,gCAAgC,CAAC;AACjE,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,4BAA4B,CAAC;AAEzD,eAAO,MAAM,YAAY,EAAE,YAkGnB,CAAC;AAET,eAAO,MAAM,QAAQ,EAAE,QA8vBf,CAAC"}
|
package/dist/package.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// generated by src/lib/package.gen.ts
|
|
2
2
|
export const package_json = {
|
|
3
3
|
name: '@ryanatkn/gro',
|
|
4
|
-
version: '0.
|
|
4
|
+
version: '0.170.0',
|
|
5
5
|
description: 'task runner and toolkit extending SvelteKit',
|
|
6
6
|
motto: 'generate, run, optimize',
|
|
7
7
|
glyph: '🌰',
|
|
@@ -39,7 +39,6 @@ export const package_json = {
|
|
|
39
39
|
'typescript',
|
|
40
40
|
],
|
|
41
41
|
dependencies: {
|
|
42
|
-
'@ryanatkn/belt': '^0.35.1',
|
|
43
42
|
chokidar: '^4.0.3',
|
|
44
43
|
dotenv: '^17.2.2',
|
|
45
44
|
'esm-env': '^1.2.2',
|
|
@@ -49,36 +48,37 @@ export const package_json = {
|
|
|
49
48
|
'prettier-plugin-svelte': '^3.4.0',
|
|
50
49
|
'ts-blank-space': '^0.6.2',
|
|
51
50
|
tslib: '^2.8.1',
|
|
52
|
-
zod: '^4.1.
|
|
51
|
+
zod: '^4.1.12',
|
|
53
52
|
},
|
|
54
53
|
peerDependencies: {
|
|
54
|
+
'@ryanatkn/belt': '^0.35.1',
|
|
55
55
|
'@sveltejs/kit': '^2',
|
|
56
56
|
esbuild: '^0.25',
|
|
57
57
|
svelte: '^5',
|
|
58
58
|
typescript: '^5',
|
|
59
|
-
vitest: '^3',
|
|
59
|
+
vitest: '^3 || ^4',
|
|
60
60
|
},
|
|
61
61
|
peerDependenciesMeta: { '@sveltejs/kit': { optional: true }, vitest: { optional: true } },
|
|
62
|
-
optionalDependencies: { vitest: '^3' },
|
|
62
|
+
optionalDependencies: { vitest: '^3 || ^4' },
|
|
63
63
|
devDependencies: {
|
|
64
64
|
'@changesets/changelog-git': '^0.2.1',
|
|
65
65
|
'@changesets/types': '^6.1.0',
|
|
66
66
|
'@ryanatkn/eslint-config': '^0.8.0',
|
|
67
67
|
'@ryanatkn/fuz': '^0.147.0',
|
|
68
68
|
'@ryanatkn/moss': '^0.36.0',
|
|
69
|
-
'@sveltejs/adapter-static': '^3.0.
|
|
70
|
-
'@sveltejs/kit': '^2.
|
|
71
|
-
'@sveltejs/package': '^2.5.
|
|
72
|
-
'@sveltejs/vite-plugin-svelte': '^6.1
|
|
69
|
+
'@sveltejs/adapter-static': '^3.0.10',
|
|
70
|
+
'@sveltejs/kit': '^2.47.2',
|
|
71
|
+
'@sveltejs/package': '^2.5.4',
|
|
72
|
+
'@sveltejs/vite-plugin-svelte': '^6.2.1',
|
|
73
73
|
'@types/node': '^24.3.1',
|
|
74
74
|
esbuild: '^0.25.9',
|
|
75
75
|
eslint: '^9.35.0',
|
|
76
|
-
'eslint-plugin-svelte': '^3.12.
|
|
77
|
-
svelte: '^5.
|
|
78
|
-
'svelte-check': '^4.3.
|
|
79
|
-
typescript: '^5.9.
|
|
76
|
+
'eslint-plugin-svelte': '^3.12.5',
|
|
77
|
+
svelte: '^5.41.2',
|
|
78
|
+
'svelte-check': '^4.3.3',
|
|
79
|
+
typescript: '^5.9.3',
|
|
80
80
|
'typescript-eslint': '^8.42.0',
|
|
81
|
-
vitest: '^
|
|
81
|
+
vitest: '^4.0.0',
|
|
82
82
|
},
|
|
83
83
|
prettier: {
|
|
84
84
|
plugins: ['prettier-plugin-svelte'],
|
|
@@ -99,7 +99,7 @@ export const package_json = {
|
|
|
99
99
|
};
|
|
100
100
|
export const src_json = {
|
|
101
101
|
name: '@ryanatkn/gro',
|
|
102
|
-
version: '0.
|
|
102
|
+
version: '0.170.0',
|
|
103
103
|
modules: {
|
|
104
104
|
'.': {
|
|
105
105
|
path: 'index.ts',
|
|
@@ -128,6 +128,7 @@ export const src_json = {
|
|
|
128
128
|
{ name: 'to_raw_rest_args', kind: 'function' },
|
|
129
129
|
{ name: 'to_forwarded_args', kind: 'function' },
|
|
130
130
|
{ name: 'to_forwarded_args_by_command', kind: 'function' },
|
|
131
|
+
{ name: 'to_implicit_forwarded_args', kind: 'function' },
|
|
131
132
|
{ name: 'print_command_args', kind: 'function' },
|
|
132
133
|
],
|
|
133
134
|
},
|
package/dist/test.task.js
CHANGED
|
@@ -3,7 +3,7 @@ import { spawn_cli } from '@ryanatkn/gro/cli.js';
|
|
|
3
3
|
import { Task_Error } from "./task.js";
|
|
4
4
|
import { find_cli } from "./cli.js";
|
|
5
5
|
import { has_dep } from "./package_json.js";
|
|
6
|
-
import { serialize_args,
|
|
6
|
+
import { serialize_args, to_implicit_forwarded_args } from "./args.js";
|
|
7
7
|
import { VITEST_CLI } from "./constants.js";
|
|
8
8
|
import { paths } from "./paths.js";
|
|
9
9
|
export const Args = z.strictObject({
|
|
@@ -39,7 +39,7 @@ export const task = {
|
|
|
39
39
|
if (t) {
|
|
40
40
|
vitest_args.push('-t', t);
|
|
41
41
|
}
|
|
42
|
-
vitest_args.push(...serialize_args(
|
|
42
|
+
vitest_args.push(...serialize_args(to_implicit_forwarded_args(VITEST_CLI)));
|
|
43
43
|
const spawned = await spawn_cli(VITEST_CLI, vitest_args);
|
|
44
44
|
if (!spawned?.ok) {
|
|
45
45
|
throw new Task_Error(`vitest failed with exit code ${spawned?.code}`);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ryanatkn/gro",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.170.0",
|
|
4
4
|
"description": "task runner and toolkit extending SvelteKit",
|
|
5
5
|
"motto": "generate, run, optimize",
|
|
6
6
|
"glyph": "🌰",
|
|
@@ -49,7 +49,6 @@
|
|
|
49
49
|
"typescript"
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@ryanatkn/belt": "^0.35.1",
|
|
53
52
|
"chokidar": "^4.0.3",
|
|
54
53
|
"dotenv": "^17.2.2",
|
|
55
54
|
"esm-env": "^1.2.2",
|
|
@@ -59,14 +58,15 @@
|
|
|
59
58
|
"prettier-plugin-svelte": "^3.4.0",
|
|
60
59
|
"ts-blank-space": "^0.6.2",
|
|
61
60
|
"tslib": "^2.8.1",
|
|
62
|
-
"zod": "^4.1.
|
|
61
|
+
"zod": "^4.1.12"
|
|
63
62
|
},
|
|
64
63
|
"peerDependencies": {
|
|
64
|
+
"@ryanatkn/belt": "^0.35.1",
|
|
65
65
|
"@sveltejs/kit": "^2",
|
|
66
66
|
"esbuild": "^0.25",
|
|
67
67
|
"svelte": "^5",
|
|
68
68
|
"typescript": "^5",
|
|
69
|
-
"vitest": "^3"
|
|
69
|
+
"vitest": "^3 || ^4"
|
|
70
70
|
},
|
|
71
71
|
"peerDependenciesMeta": {
|
|
72
72
|
"@sveltejs/kit": {
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
}
|
|
78
78
|
},
|
|
79
79
|
"optionalDependencies": {
|
|
80
|
-
"vitest": "^3"
|
|
80
|
+
"vitest": "^3 || ^4"
|
|
81
81
|
},
|
|
82
82
|
"devDependencies": {
|
|
83
83
|
"@changesets/changelog-git": "^0.2.1",
|
|
@@ -85,19 +85,19 @@
|
|
|
85
85
|
"@ryanatkn/eslint-config": "^0.8.0",
|
|
86
86
|
"@ryanatkn/fuz": "^0.147.0",
|
|
87
87
|
"@ryanatkn/moss": "^0.36.0",
|
|
88
|
-
"@sveltejs/adapter-static": "^3.0.
|
|
89
|
-
"@sveltejs/kit": "^2.
|
|
90
|
-
"@sveltejs/package": "^2.5.
|
|
91
|
-
"@sveltejs/vite-plugin-svelte": "^6.1
|
|
88
|
+
"@sveltejs/adapter-static": "^3.0.10",
|
|
89
|
+
"@sveltejs/kit": "^2.47.2",
|
|
90
|
+
"@sveltejs/package": "^2.5.4",
|
|
91
|
+
"@sveltejs/vite-plugin-svelte": "^6.2.1",
|
|
92
92
|
"@types/node": "^24.3.1",
|
|
93
93
|
"esbuild": "^0.25.9",
|
|
94
94
|
"eslint": "^9.35.0",
|
|
95
|
-
"eslint-plugin-svelte": "^3.12.
|
|
96
|
-
"svelte": "^5.
|
|
97
|
-
"svelte-check": "^4.3.
|
|
98
|
-
"typescript": "^5.9.
|
|
95
|
+
"eslint-plugin-svelte": "^3.12.5",
|
|
96
|
+
"svelte": "^5.41.2",
|
|
97
|
+
"svelte-check": "^4.3.3",
|
|
98
|
+
"typescript": "^5.9.3",
|
|
99
99
|
"typescript-eslint": "^8.42.0",
|
|
100
|
-
"vitest": "^
|
|
100
|
+
"vitest": "^4.0.0"
|
|
101
101
|
},
|
|
102
102
|
"prettier": {
|
|
103
103
|
"plugins": [
|
package/src/lib/args.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type {z} from 'zod';
|
|
|
9
9
|
* unless `invoke_task` is called with modified args.
|
|
10
10
|
* Upstream tasks can use listeners to respond to downstream events and values.
|
|
11
11
|
* It's a beautiful mutable spaghetti mess. cant get enough
|
|
12
|
-
* The raw CLI
|
|
12
|
+
* The raw CLI args are handled by `mri` - https://github.com/lukeed/mri
|
|
13
13
|
*/
|
|
14
14
|
export interface Args {
|
|
15
15
|
_?: Array<string>;
|
|
@@ -165,6 +165,37 @@ export const to_forwarded_args_by_command = (
|
|
|
165
165
|
return forwarded_args_by_command;
|
|
166
166
|
};
|
|
167
167
|
|
|
168
|
+
/**
|
|
169
|
+
* Gets all args after the first `--` without assuming a command name.
|
|
170
|
+
* This is useful for tasks that want to forward args directly to a tool
|
|
171
|
+
* without requiring users to specify the tool name explicitly.
|
|
172
|
+
* Optionally strips a specific command name if present for backward compatibility.
|
|
173
|
+
* @example
|
|
174
|
+
* ```ts
|
|
175
|
+
* // `gro test -- --watch` → {watch: true}
|
|
176
|
+
* // `gro test -- foo.test.ts` → {_: ['foo.test.ts']}
|
|
177
|
+
* // `gro test -- vitest --watch` with command_to_strip='vitest' → {watch: true}
|
|
178
|
+
* to_implicit_forwarded_args('vitest')
|
|
179
|
+
* ```
|
|
180
|
+
*/
|
|
181
|
+
export const to_implicit_forwarded_args = (
|
|
182
|
+
command_to_strip?: string,
|
|
183
|
+
raw_rest_args = to_raw_rest_args(),
|
|
184
|
+
): Args => {
|
|
185
|
+
const start = raw_rest_args.indexOf('--');
|
|
186
|
+
if (start === -1) return {};
|
|
187
|
+
|
|
188
|
+
let argv = raw_rest_args.slice(start + 1);
|
|
189
|
+
|
|
190
|
+
if (command_to_strip && argv[0] === command_to_strip) {
|
|
191
|
+
argv = argv.slice(1);
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
const args = mri(argv);
|
|
195
|
+
if (!args._.length) delete (args as Args)._;
|
|
196
|
+
return args;
|
|
197
|
+
};
|
|
198
|
+
|
|
168
199
|
export const print_command_args = (serialized_args: Array<string>): string =>
|
|
169
200
|
st('gray', '[') +
|
|
170
201
|
st('magenta', 'running command') +
|
package/src/lib/package.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type {Src_Json} from '@ryanatkn/belt/src_json.js';
|
|
|
5
5
|
|
|
6
6
|
export const package_json: Package_Json = {
|
|
7
7
|
name: '@ryanatkn/gro',
|
|
8
|
-
version: '0.
|
|
8
|
+
version: '0.170.0',
|
|
9
9
|
description: 'task runner and toolkit extending SvelteKit',
|
|
10
10
|
motto: 'generate, run, optimize',
|
|
11
11
|
glyph: '🌰',
|
|
@@ -44,7 +44,6 @@ export const package_json: Package_Json = {
|
|
|
44
44
|
'typescript',
|
|
45
45
|
],
|
|
46
46
|
dependencies: {
|
|
47
|
-
'@ryanatkn/belt': '^0.35.1',
|
|
48
47
|
chokidar: '^4.0.3',
|
|
49
48
|
dotenv: '^17.2.2',
|
|
50
49
|
'esm-env': '^1.2.2',
|
|
@@ -54,36 +53,37 @@ export const package_json: Package_Json = {
|
|
|
54
53
|
'prettier-plugin-svelte': '^3.4.0',
|
|
55
54
|
'ts-blank-space': '^0.6.2',
|
|
56
55
|
tslib: '^2.8.1',
|
|
57
|
-
zod: '^4.1.
|
|
56
|
+
zod: '^4.1.12',
|
|
58
57
|
},
|
|
59
58
|
peerDependencies: {
|
|
59
|
+
'@ryanatkn/belt': '^0.35.1',
|
|
60
60
|
'@sveltejs/kit': '^2',
|
|
61
61
|
esbuild: '^0.25',
|
|
62
62
|
svelte: '^5',
|
|
63
63
|
typescript: '^5',
|
|
64
|
-
vitest: '^3',
|
|
64
|
+
vitest: '^3 || ^4',
|
|
65
65
|
},
|
|
66
66
|
peerDependenciesMeta: {'@sveltejs/kit': {optional: true}, vitest: {optional: true}},
|
|
67
|
-
optionalDependencies: {vitest: '^3'},
|
|
67
|
+
optionalDependencies: {vitest: '^3 || ^4'},
|
|
68
68
|
devDependencies: {
|
|
69
69
|
'@changesets/changelog-git': '^0.2.1',
|
|
70
70
|
'@changesets/types': '^6.1.0',
|
|
71
71
|
'@ryanatkn/eslint-config': '^0.8.0',
|
|
72
72
|
'@ryanatkn/fuz': '^0.147.0',
|
|
73
73
|
'@ryanatkn/moss': '^0.36.0',
|
|
74
|
-
'@sveltejs/adapter-static': '^3.0.
|
|
75
|
-
'@sveltejs/kit': '^2.
|
|
76
|
-
'@sveltejs/package': '^2.5.
|
|
77
|
-
'@sveltejs/vite-plugin-svelte': '^6.1
|
|
74
|
+
'@sveltejs/adapter-static': '^3.0.10',
|
|
75
|
+
'@sveltejs/kit': '^2.47.2',
|
|
76
|
+
'@sveltejs/package': '^2.5.4',
|
|
77
|
+
'@sveltejs/vite-plugin-svelte': '^6.2.1',
|
|
78
78
|
'@types/node': '^24.3.1',
|
|
79
79
|
esbuild: '^0.25.9',
|
|
80
80
|
eslint: '^9.35.0',
|
|
81
|
-
'eslint-plugin-svelte': '^3.12.
|
|
82
|
-
svelte: '^5.
|
|
83
|
-
'svelte-check': '^4.3.
|
|
84
|
-
typescript: '^5.9.
|
|
81
|
+
'eslint-plugin-svelte': '^3.12.5',
|
|
82
|
+
svelte: '^5.41.2',
|
|
83
|
+
'svelte-check': '^4.3.3',
|
|
84
|
+
typescript: '^5.9.3',
|
|
85
85
|
'typescript-eslint': '^8.42.0',
|
|
86
|
-
vitest: '^
|
|
86
|
+
vitest: '^4.0.0',
|
|
87
87
|
},
|
|
88
88
|
prettier: {
|
|
89
89
|
plugins: ['prettier-plugin-svelte'],
|
|
@@ -105,7 +105,7 @@ export const package_json: Package_Json = {
|
|
|
105
105
|
|
|
106
106
|
export const src_json: Src_Json = {
|
|
107
107
|
name: '@ryanatkn/gro',
|
|
108
|
-
version: '0.
|
|
108
|
+
version: '0.170.0',
|
|
109
109
|
modules: {
|
|
110
110
|
'.': {
|
|
111
111
|
path: 'index.ts',
|
|
@@ -134,6 +134,7 @@ export const src_json: Src_Json = {
|
|
|
134
134
|
{name: 'to_raw_rest_args', kind: 'function'},
|
|
135
135
|
{name: 'to_forwarded_args', kind: 'function'},
|
|
136
136
|
{name: 'to_forwarded_args_by_command', kind: 'function'},
|
|
137
|
+
{name: 'to_implicit_forwarded_args', kind: 'function'},
|
|
137
138
|
{name: 'print_command_args', kind: 'function'},
|
|
138
139
|
],
|
|
139
140
|
},
|
package/src/lib/test.task.ts
CHANGED
|
@@ -4,7 +4,7 @@ import {spawn_cli} from '@ryanatkn/gro/cli.js';
|
|
|
4
4
|
import {Task_Error, type Task} from './task.ts';
|
|
5
5
|
import {find_cli} from './cli.ts';
|
|
6
6
|
import {has_dep} from './package_json.ts';
|
|
7
|
-
import {serialize_args,
|
|
7
|
+
import {serialize_args, to_implicit_forwarded_args} from './args.ts';
|
|
8
8
|
import {VITEST_CLI} from './constants.ts';
|
|
9
9
|
import {paths} from './paths.ts';
|
|
10
10
|
|
|
@@ -46,7 +46,7 @@ export const task: Task<Args> = {
|
|
|
46
46
|
if (t) {
|
|
47
47
|
vitest_args.push('-t', t);
|
|
48
48
|
}
|
|
49
|
-
vitest_args.push(...serialize_args(
|
|
49
|
+
vitest_args.push(...serialize_args(to_implicit_forwarded_args(VITEST_CLI)));
|
|
50
50
|
|
|
51
51
|
const spawned = await spawn_cli(VITEST_CLI, vitest_args);
|
|
52
52
|
if (!spawned?.ok) {
|