@ryanatkn/gro 0.133.7 → 0.134.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/cli.d.ts +5 -4
- package/dist/cli.d.ts.map +1 -1
- package/dist/gro_plugin_server.d.ts.map +1 -1
- package/dist/gro_plugin_server.js +6 -1
- package/dist/package.d.ts.map +1 -1
- package/dist/package.js +16 -15
- package/dist/path.d.ts +1 -0
- package/dist/path.d.ts.map +1 -1
- package/dist/sveltekit_helpers.d.ts +4 -0
- package/dist/sveltekit_helpers.d.ts.map +1 -1
- package/dist/sveltekit_helpers.js +10 -0
- package/dist/typecheck.task.js +2 -2
- package/dist/watch_dir.d.ts +3 -3
- package/dist/watch_dir.d.ts.map +1 -1
- package/dist/watch_dir.js +3 -3
- package/package.json +14 -14
- package/src/lib/cli.ts +5 -5
- package/src/lib/gro_plugin_server.ts +6 -1
- package/src/lib/package.ts +16 -15
- package/src/lib/path.ts +1 -1
- package/src/lib/sveltekit_helpers.ts +14 -0
- package/src/lib/typecheck.task.ts +2 -2
- package/src/lib/watch_dir.ts +5 -5
package/dist/cli.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type SpawnOptions } from 'node:child_process';
|
|
2
2
|
import { type Spawn_Result, type Spawned_Process } from '@ryanatkn/belt/process.js';
|
|
3
|
+
import { type URL } from 'node:url';
|
|
3
4
|
import type { Path_Id } from './path.js';
|
|
4
5
|
export type Cli = {
|
|
5
6
|
kind: 'local';
|
|
@@ -14,19 +15,19 @@ export type Cli = {
|
|
|
14
15
|
* Searches the filesystem for the CLI `name`, first local to the cwd and then globally.
|
|
15
16
|
* @returns `null` if not found locally or globally
|
|
16
17
|
*/
|
|
17
|
-
export declare const find_cli: (name: string, cwd?: string | URL, options?: SpawnOptions
|
|
18
|
+
export declare const find_cli: (name: string, cwd?: string | URL, options?: SpawnOptions) => Cli | null;
|
|
18
19
|
/**
|
|
19
20
|
* Spawns a CLI if available using Belt's `spawn`.
|
|
20
21
|
* If a string is provided for `name_or_cli`, it checks first local to the cwd and then globally.
|
|
21
22
|
* @returns `undefined` if no CLI is found, or the spawn result
|
|
22
23
|
*/
|
|
23
|
-
export declare const spawn_cli: (name_or_cli: string | Cli, args?: string[], log?: any, options?: SpawnOptions
|
|
24
|
+
export declare const spawn_cli: (name_or_cli: string | Cli, args?: string[], log?: any, options?: SpawnOptions) => Promise<Spawn_Result | undefined>;
|
|
24
25
|
/**
|
|
25
26
|
* Spawns a CLI if available using Belt's `spawn_process`.
|
|
26
27
|
* If a string is provided for `name_or_cli`, it checks first local to the cwd and then globally.
|
|
27
28
|
* @returns `undefined` if no CLI is found, or the spawn result
|
|
28
29
|
*/
|
|
29
|
-
export declare const spawn_cli_process: (name_or_cli: string | Cli, args?: string[], log?: any, options?: SpawnOptions
|
|
30
|
-
export declare const resolve_cli: (name_or_cli: string | Cli, args: string[] | undefined, cwd: string | URL | undefined, log?: any, options?: SpawnOptions
|
|
30
|
+
export declare const spawn_cli_process: (name_or_cli: string | Cli, args?: string[], log?: any, options?: SpawnOptions) => Spawned_Process | undefined;
|
|
31
|
+
export declare const resolve_cli: (name_or_cli: string | Cli, args: string[] | undefined, cwd: string | URL | undefined, log?: any, options?: SpawnOptions) => Cli | undefined;
|
|
31
32
|
export declare const to_cli_name: (cli: string | Cli) => string;
|
|
32
33
|
//# sourceMappingURL=cli.d.ts.map
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"../src/lib/","sources":["cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAGN,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"../src/lib/","sources":["cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,YAAY,EAAC,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAGN,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAAgB,KAAK,GAAG,EAAC,MAAM,UAAU,CAAC;AAIjD,OAAO,KAAK,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAKvC,MAAM,MAAM,GAAG,GACZ;IAAC,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAC,GAC1C;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,OAAO,CAAA;CAAC,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,QAAQ,SACd,MAAM,QACP,MAAM,GAAG,GAAG,YACP,YAAY,KACpB,GAAG,GAAG,IAUR,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,SAAS,gBACR,MAAM,GAAG,GAAG,SACnB,MAAM,EAAE,uBAEJ,YAAY,KACpB,OAAO,CAAC,YAAY,GAAG,SAAS,CAIlC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,gBAChB,MAAM,GAAG,GAAG,SACnB,MAAM,EAAE,uBAEJ,YAAY,KACpB,eAAe,GAAG,SAIpB,CAAC;AAEF,eAAO,MAAM,WAAW,gBACV,MAAM,GAAG,GAAG,QACnB,MAAM,EAAE,mBACT,MAAM,GAAG,GAAG,GAAG,SAAS,uBAEnB,YAAY,KACpB,GAAG,GAAG,SAaR,CAAC;AAEF,eAAO,MAAM,WAAW,QAAS,MAAM,GAAG,GAAG,KAAG,MACP,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gro_plugin_server.d.ts","sourceRoot":"../src/lib/","sources":["gro_plugin_server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAC,MAAM,IAAI,eAAe,EAAC,MAAM,eAAe,CAAC;AAI7D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAGrD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBxC,eAAO,MAAM,gBAAgB,6BAA0D,CAAC;AAExF,eAAO,MAAM,UAAU,0CAA8B,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAKpF,CAAC;AAEF,MAAM,WAAW,OAAO;IACvB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC;;OAEG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC;IACrF;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,QAAQ;IACxB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAC;AAEzD,eAAO,MAAM,iBAAiB,yJAgB3B,OAAO,KAAQ,
|
|
1
|
+
{"version":3,"file":"gro_plugin_server.d.ts","sourceRoot":"../src/lib/","sources":["gro_plugin_server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AACnC,OAAO,KAAK,EAAC,MAAM,IAAI,eAAe,EAAC,MAAM,eAAe,CAAC;AAI7D,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAGrD,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,aAAa,CAAC;AAiBxC,eAAO,MAAM,gBAAgB,6BAA0D,CAAC;AAExF,eAAO,MAAM,UAAU,0CAA8B,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAKpF,CAAC;AAEF,MAAM,WAAW,OAAO;IACvB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrC;;OAEG;IACH,gBAAgB,CAAC,EAAE,eAAe,CAAC;IACnC;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,qBAAqB,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,YAAY,KAAK,OAAO,CAAC,YAAY,CAAC;IACrF;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,GAAG,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,QAAQ;IACxB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,OAAO,KAAK,QAAQ,CAAC;AAEzD,eAAO,MAAM,iBAAiB,yJAgB3B,OAAO,KAAQ,MAqJjB,CAAC"}
|
|
@@ -136,7 +136,12 @@ export const gro_plugin_server = ({ entry_points = [SERVER_SOURCE_ID], dir = pro
|
|
|
136
136
|
throw Error(`Node server failed to start due to missing file: ${server_outpath}`);
|
|
137
137
|
}
|
|
138
138
|
if (run || dev) {
|
|
139
|
-
|
|
139
|
+
const cli_args = [];
|
|
140
|
+
if (dev) {
|
|
141
|
+
cli_args.push('-C', 'development'); // same as `--conditions`
|
|
142
|
+
}
|
|
143
|
+
cli_args.push(server_outpath);
|
|
144
|
+
server_process = spawn_restartable_process(cli_command, cli_args);
|
|
140
145
|
}
|
|
141
146
|
},
|
|
142
147
|
teardown: async () => {
|
package/dist/package.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package.d.ts","sourceRoot":"../src/lib/","sources":["package.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqQD,CAAC;AAEzB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"package.d.ts","sourceRoot":"../src/lib/","sources":["package.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqQD,CAAC;AAEzB,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsuBD,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.134.0',
|
|
5
5
|
description: 'task runner and toolkit extending SvelteKit',
|
|
6
6
|
motto: 'generate, run, optimize',
|
|
7
7
|
glyph: '🌰',
|
|
@@ -40,7 +40,7 @@ export const package_json = {
|
|
|
40
40
|
],
|
|
41
41
|
dependencies: {
|
|
42
42
|
'@ryanatkn/belt': '^0.24.12',
|
|
43
|
-
chokidar: '^
|
|
43
|
+
chokidar: '^4.0.0',
|
|
44
44
|
dotenv: '^16.4.5',
|
|
45
45
|
'es-module-lexer': '^1.5.4',
|
|
46
46
|
'esm-env': '^1.0.0',
|
|
@@ -48,29 +48,29 @@ export const package_json = {
|
|
|
48
48
|
prettier: '^3.3.3',
|
|
49
49
|
'prettier-plugin-svelte': '^3.2.6',
|
|
50
50
|
'ts-morph': '^23.0.0',
|
|
51
|
-
tslib: '^2.
|
|
51
|
+
tslib: '^2.7.0',
|
|
52
52
|
zod: '^3.23.8',
|
|
53
53
|
},
|
|
54
54
|
peerDependencies: { esbuild: '^0.21.0', svelte: '^5.0.0-next.0' },
|
|
55
55
|
devDependencies: {
|
|
56
56
|
'@changesets/changelog-git': '^0.2.0',
|
|
57
57
|
'@changesets/types': '^6.0.0',
|
|
58
|
-
'@ryanatkn/eslint-config': '^0.5.
|
|
59
|
-
'@ryanatkn/fuz': '^0.
|
|
60
|
-
'@ryanatkn/moss': '^0.
|
|
58
|
+
'@ryanatkn/eslint-config': '^0.5.3',
|
|
59
|
+
'@ryanatkn/fuz': '^0.121.0',
|
|
60
|
+
'@ryanatkn/moss': '^0.15.0',
|
|
61
61
|
'@sveltejs/adapter-static': '^3.0.4',
|
|
62
|
-
'@sveltejs/kit': '^2.5.
|
|
62
|
+
'@sveltejs/kit': '^2.5.26',
|
|
63
63
|
'@sveltejs/package': '^2.3.4',
|
|
64
|
-
'@sveltejs/vite-plugin-svelte': '^3.1.
|
|
64
|
+
'@sveltejs/vite-plugin-svelte': '^3.1.2',
|
|
65
65
|
'@types/fs-extra': '^11.0.4',
|
|
66
|
-
'@types/node': '^22.
|
|
66
|
+
'@types/node': '^22.5.4',
|
|
67
67
|
esbuild: '^0.21.5',
|
|
68
|
-
eslint: '^9.
|
|
68
|
+
eslint: '^9.10.0',
|
|
69
69
|
'eslint-plugin-svelte': '^2.43.0',
|
|
70
|
-
svelte: '^5.0.0-next.
|
|
71
|
-
'svelte-check': '^
|
|
72
|
-
typescript: '^5.
|
|
73
|
-
'typescript-eslint': '^8.
|
|
70
|
+
svelte: '^5.0.0-next.245',
|
|
71
|
+
'svelte-check': '^4.0.2',
|
|
72
|
+
typescript: '^5.6.2',
|
|
73
|
+
'typescript-eslint': '^8.5.0',
|
|
74
74
|
uvu: '^0.5.6',
|
|
75
75
|
},
|
|
76
76
|
prettier: {
|
|
@@ -262,7 +262,7 @@ export const package_json = {
|
|
|
262
262
|
};
|
|
263
263
|
export const src_json = {
|
|
264
264
|
name: '@ryanatkn/gro',
|
|
265
|
-
version: '0.
|
|
265
|
+
version: '0.134.0',
|
|
266
266
|
modules: {
|
|
267
267
|
'.': {
|
|
268
268
|
path: 'index.ts',
|
|
@@ -861,6 +861,7 @@ export const src_json = {
|
|
|
861
861
|
{ name: 'has_sveltekit_app', kind: 'function' },
|
|
862
862
|
{ name: 'has_sveltekit_library', kind: 'function' },
|
|
863
863
|
{ name: 'sveltekit_sync', kind: 'function' },
|
|
864
|
+
{ name: 'sveltekit_sync_if_available', kind: 'function' },
|
|
864
865
|
{ name: 'sveltekit_sync_if_obviously_needed', kind: 'function' },
|
|
865
866
|
{ name: 'Svelte_Package_Options', kind: 'type' },
|
|
866
867
|
],
|
package/dist/path.d.ts
CHANGED
package/dist/path.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"path.d.ts","sourceRoot":"../src/lib/","sources":["path.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"path.d.ts","sourceRoot":"../src/lib/","sources":["path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,GAAG,EAAC,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,yBAAyB,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAElD,MAAM,WAAW,SAAS;IACzB,EAAE,EAAE,OAAO,CAAC;IACZ,YAAY,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS;IAC/C,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,KAAK,OAAO,CAAC;AAE3E,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;AAEpD,eAAO,MAAM,YAAY,gBAAiB,MAAM,GAAG,GAAG,KAAG,MACuB,CAAC"}
|
|
@@ -15,6 +15,10 @@ export declare const has_sveltekit_library: (package_json?: Package_Json, svelte
|
|
|
15
15
|
message: string;
|
|
16
16
|
}>;
|
|
17
17
|
export declare const sveltekit_sync: (sveltekit_cli?: string | Cli) => Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
20
|
+
*/
|
|
21
|
+
export declare const sveltekit_sync_if_available: (sveltekit_cli?: string | Cli) => Promise<void>;
|
|
18
22
|
/**
|
|
19
23
|
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
20
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sveltekit_helpers.d.ts","sourceRoot":"../src/lib/","sources":["sveltekit_helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAC,YAAY,EAAoB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAA2B,KAAK,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAE7F,OAAO,EAAmC,KAAK,GAAG,EAAC,MAAM,UAAU,CAAC;AAGpE,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AACnD,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,eAAO,MAAM,qBAAqB,QAAgD,CAAC;AAEnF,eAAO,MAAM,iBAAiB,QAAO,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAMpE,CAAC;AAEF,eAAO,MAAM,qBAAqB,kBAClB,YAAY,qBACT,uBAAuB,KACvC,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAqBlC,CAAC;AAEF,eAAO,MAAM,cAAc,mBACX,MAAM,GAAG,GAAG,KACzB,OAAO,CAAC,IAAI,CASd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kCAAkC,mBAC/B,MAAM,GAAG,GAAG,KACzB,OAAO,CAAC,IAAI,CAUd,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACtC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
1
|
+
{"version":3,"file":"sveltekit_helpers.d.ts","sourceRoot":"../src/lib/","sources":["sveltekit_helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,MAAM,EAAC,MAAM,0BAA0B,CAAC;AAGrD,OAAO,EAAC,YAAY,EAAoB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAA2B,KAAK,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAE7F,OAAO,EAAmC,KAAK,GAAG,EAAC,MAAM,UAAU,CAAC;AAGpE,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,eAAO,MAAM,gBAAgB,iBAAiB,CAAC;AAE/C,eAAO,MAAM,kBAAkB,mBAAmB,CAAC;AACnD,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAE3D,eAAO,MAAM,QAAQ,SAAS,CAAC;AAE/B,eAAO,MAAM,qBAAqB,QAAgD,CAAC;AAEnF,eAAO,MAAM,iBAAiB,QAAO,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAMpE,CAAC;AAEF,eAAO,MAAM,qBAAqB,kBAClB,YAAY,qBACT,uBAAuB,KACvC,MAAM,CAAC,MAAM,EAAE;IAAC,OAAO,EAAE,MAAM,CAAA;CAAC,CAqBlC,CAAC;AAEF,eAAO,MAAM,cAAc,mBACX,MAAM,GAAG,GAAG,KACzB,OAAO,CAAC,IAAI,CASd,CAAC;AAGF;;GAEG;AACH,eAAO,MAAM,2BAA2B,mBACxB,MAAM,GAAG,GAAG,KACzB,OAAO,CAAC,IAAI,CAMd,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kCAAkC,mBAC/B,MAAM,GAAG,GAAG,KACzB,OAAO,CAAC,IAAI,CAUd,CAAC;AAEF;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACtC;;OAEG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IACX;;;;;OAKG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;IACX;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;OAEG;IACH,CAAC,CAAC,EAAE,OAAO,CAAC;IACZ;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB"}
|
|
@@ -43,6 +43,16 @@ export const sveltekit_sync = async (sveltekit_cli = SVELTEKIT_CLI) => {
|
|
|
43
43
|
throw new Task_Error(`Failed ${to_cli_name(sveltekit_cli)} sync`);
|
|
44
44
|
}
|
|
45
45
|
};
|
|
46
|
+
// TODO maybe this shouldn't exist, instead error if `package.json` has SvelteKit but it's not found (with install message above)
|
|
47
|
+
/**
|
|
48
|
+
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
49
|
+
*/
|
|
50
|
+
export const sveltekit_sync_if_available = async (sveltekit_cli = SVELTEKIT_CLI) => {
|
|
51
|
+
const found_sveltekit_cli = typeof sveltekit_cli === 'string' ? find_cli(sveltekit_cli) : sveltekit_cli;
|
|
52
|
+
if (found_sveltekit_cli) {
|
|
53
|
+
return sveltekit_sync(found_sveltekit_cli);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
46
56
|
/**
|
|
47
57
|
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
48
58
|
*/
|
package/dist/typecheck.task.js
CHANGED
|
@@ -3,7 +3,7 @@ import { z } from 'zod';
|
|
|
3
3
|
import { Task_Error } from './task.js';
|
|
4
4
|
import { serialize_args, to_forwarded_args } from './args.js';
|
|
5
5
|
import { find_cli, spawn_cli } from './cli.js';
|
|
6
|
-
import { SVELTE_CHECK_CLI,
|
|
6
|
+
import { SVELTE_CHECK_CLI, sveltekit_sync_if_available } from './sveltekit_helpers.js';
|
|
7
7
|
export const Args = z
|
|
8
8
|
.object({
|
|
9
9
|
svelte_check_cli: z
|
|
@@ -19,7 +19,7 @@ export const task = {
|
|
|
19
19
|
Args,
|
|
20
20
|
run: async ({ args, log }) => {
|
|
21
21
|
const { svelte_check_cli, typescript_cli } = args;
|
|
22
|
-
await
|
|
22
|
+
await sveltekit_sync_if_available();
|
|
23
23
|
// Prefer svelte-check if available.
|
|
24
24
|
const found_svelte_check_cli = find_cli(svelte_check_cli);
|
|
25
25
|
if (found_svelte_check_cli) {
|
package/dist/watch_dir.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type ChokidarOptions } from 'chokidar';
|
|
2
2
|
import type { Path_Filter } from './path.js';
|
|
3
3
|
export interface Watch_Node_Fs {
|
|
4
4
|
init: () => Promise<void>;
|
|
@@ -15,7 +15,7 @@ export interface Options {
|
|
|
15
15
|
dir: string;
|
|
16
16
|
on_change: Watcher_Change_Callback;
|
|
17
17
|
filter?: Path_Filter | null | undefined;
|
|
18
|
-
chokidar?:
|
|
18
|
+
chokidar?: ChokidarOptions;
|
|
19
19
|
/**
|
|
20
20
|
* When `false`, returns the `path` relative to `dir`.
|
|
21
21
|
* @default true
|
|
@@ -25,5 +25,5 @@ export interface Options {
|
|
|
25
25
|
/**
|
|
26
26
|
* Watch for changes on the filesystem using chokidar.
|
|
27
27
|
*/
|
|
28
|
-
export declare const watch_dir: ({ dir, on_change, filter, absolute, chokidar
|
|
28
|
+
export declare const watch_dir: ({ dir, on_change, filter, absolute, chokidar, }: Options) => Watch_Node_Fs;
|
|
29
29
|
//# sourceMappingURL=watch_dir.d.ts.map
|
package/dist/watch_dir.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch_dir.d.ts","sourceRoot":"../src/lib/","sources":["watch_dir.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"watch_dir.d.ts","sourceRoot":"../src/lib/","sources":["watch_dir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,eAAe,EAAiB,MAAM,UAAU,CAAC;AAGrE,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAK3C,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1B,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,OAAO,CAAC;CACtB;AACD,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACjE,MAAM,MAAM,uBAAuB,GAAG,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;AAEvE,MAAM,WAAW,OAAO;IACvB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,uBAAuB,CAAC;IACnC,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,eAAO,MAAM,SAAS,oDAMnB,OAAO,KAAG,aA6CZ,CAAC"}
|
package/dist/watch_dir.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { watch } from 'chokidar';
|
|
2
2
|
import { relative } from 'node:path';
|
|
3
3
|
import { statSync } from 'node:fs';
|
|
4
4
|
/**
|
|
5
5
|
* Watch for changes on the filesystem using chokidar.
|
|
6
6
|
*/
|
|
7
|
-
export const watch_dir = ({ dir, on_change, filter, absolute = true, chokidar
|
|
7
|
+
export const watch_dir = ({ dir, on_change, filter, absolute = true, chokidar = {}, }) => {
|
|
8
8
|
let watcher;
|
|
9
9
|
return {
|
|
10
10
|
init: async () => {
|
|
11
|
-
watcher =
|
|
11
|
+
watcher = watch(dir, chokidar);
|
|
12
12
|
watcher.on('add', (path, s) => {
|
|
13
13
|
const stats = s ?? statSync(path);
|
|
14
14
|
const final_path = absolute ? path : relative(dir, path);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ryanatkn/gro",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.134.0",
|
|
4
4
|
"description": "task runner and toolkit extending SvelteKit",
|
|
5
5
|
"motto": "generate, run, optimize",
|
|
6
6
|
"glyph": "🌰",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
],
|
|
51
51
|
"dependencies": {
|
|
52
52
|
"@ryanatkn/belt": "^0.24.12",
|
|
53
|
-
"chokidar": "^
|
|
53
|
+
"chokidar": "^4.0.0",
|
|
54
54
|
"dotenv": "^16.4.5",
|
|
55
55
|
"es-module-lexer": "^1.5.4",
|
|
56
56
|
"esm-env": "^1.0.0",
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
"prettier": "^3.3.3",
|
|
59
59
|
"prettier-plugin-svelte": "^3.2.6",
|
|
60
60
|
"ts-morph": "^23.0.0",
|
|
61
|
-
"tslib": "^2.
|
|
61
|
+
"tslib": "^2.7.0",
|
|
62
62
|
"zod": "^3.23.8"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
@@ -68,22 +68,22 @@
|
|
|
68
68
|
"devDependencies": {
|
|
69
69
|
"@changesets/changelog-git": "^0.2.0",
|
|
70
70
|
"@changesets/types": "^6.0.0",
|
|
71
|
-
"@ryanatkn/eslint-config": "^0.5.
|
|
72
|
-
"@ryanatkn/fuz": "^0.
|
|
73
|
-
"@ryanatkn/moss": "^0.
|
|
71
|
+
"@ryanatkn/eslint-config": "^0.5.3",
|
|
72
|
+
"@ryanatkn/fuz": "^0.121.0",
|
|
73
|
+
"@ryanatkn/moss": "^0.15.0",
|
|
74
74
|
"@sveltejs/adapter-static": "^3.0.4",
|
|
75
|
-
"@sveltejs/kit": "^2.5.
|
|
75
|
+
"@sveltejs/kit": "^2.5.26",
|
|
76
76
|
"@sveltejs/package": "^2.3.4",
|
|
77
|
-
"@sveltejs/vite-plugin-svelte": "^3.1.
|
|
77
|
+
"@sveltejs/vite-plugin-svelte": "^3.1.2",
|
|
78
78
|
"@types/fs-extra": "^11.0.4",
|
|
79
|
-
"@types/node": "^22.
|
|
79
|
+
"@types/node": "^22.5.4",
|
|
80
80
|
"esbuild": "^0.21.5",
|
|
81
|
-
"eslint": "^9.
|
|
81
|
+
"eslint": "^9.10.0",
|
|
82
82
|
"eslint-plugin-svelte": "^2.43.0",
|
|
83
|
-
"svelte": "^5.0.0-next.
|
|
84
|
-
"svelte-check": "^
|
|
85
|
-
"typescript": "^5.
|
|
86
|
-
"typescript-eslint": "^8.
|
|
83
|
+
"svelte": "^5.0.0-next.245",
|
|
84
|
+
"svelte-check": "^4.0.2",
|
|
85
|
+
"typescript": "^5.6.2",
|
|
86
|
+
"typescript-eslint": "^8.5.0",
|
|
87
87
|
"uvu": "^0.5.6"
|
|
88
88
|
},
|
|
89
89
|
"prettier": {
|
package/src/lib/cli.ts
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
} from '@ryanatkn/belt/process.js';
|
|
8
8
|
import {join} from 'node:path';
|
|
9
9
|
import {existsSync} from 'node:fs';
|
|
10
|
-
import {fileURLToPath} from 'node:url';
|
|
10
|
+
import {fileURLToPath, type URL} from 'node:url';
|
|
11
11
|
import type {Logger} from '@ryanatkn/belt/log.js';
|
|
12
12
|
|
|
13
13
|
import {NODE_MODULES_DIRNAME} from './path_constants.js';
|
|
@@ -27,7 +27,7 @@ export type Cli =
|
|
|
27
27
|
export const find_cli = (
|
|
28
28
|
name: string,
|
|
29
29
|
cwd: string | URL = process.cwd(),
|
|
30
|
-
options?: SpawnOptions
|
|
30
|
+
options?: SpawnOptions,
|
|
31
31
|
): Cli | null => {
|
|
32
32
|
const final_cwd = typeof cwd === 'string' ? cwd : fileURLToPath(cwd);
|
|
33
33
|
const local_id = join(final_cwd, NODE_MODULES_DIRNAME, `.bin/${name}`);
|
|
@@ -49,7 +49,7 @@ export const spawn_cli = async (
|
|
|
49
49
|
name_or_cli: string | Cli,
|
|
50
50
|
args: string[] = [],
|
|
51
51
|
log?: Logger,
|
|
52
|
-
options?: SpawnOptions
|
|
52
|
+
options?: SpawnOptions,
|
|
53
53
|
): Promise<Spawn_Result | undefined> => {
|
|
54
54
|
const cli = resolve_cli(name_or_cli, args, options?.cwd, log, options);
|
|
55
55
|
if (!cli) return;
|
|
@@ -65,7 +65,7 @@ export const spawn_cli_process = (
|
|
|
65
65
|
name_or_cli: string | Cli,
|
|
66
66
|
args: string[] = [],
|
|
67
67
|
log?: Logger,
|
|
68
|
-
options?: SpawnOptions
|
|
68
|
+
options?: SpawnOptions,
|
|
69
69
|
): Spawned_Process | undefined => {
|
|
70
70
|
const cli = resolve_cli(name_or_cli, args, options?.cwd, log, options);
|
|
71
71
|
if (!cli) return;
|
|
@@ -77,7 +77,7 @@ export const resolve_cli = (
|
|
|
77
77
|
args: string[] = [],
|
|
78
78
|
cwd: string | URL | undefined,
|
|
79
79
|
log?: Logger,
|
|
80
|
-
options?: SpawnOptions
|
|
80
|
+
options?: SpawnOptions,
|
|
81
81
|
): Cli | undefined => {
|
|
82
82
|
let final_cli;
|
|
83
83
|
if (typeof name_or_cli === 'string') {
|
|
@@ -248,7 +248,12 @@ export const gro_plugin_server = ({
|
|
|
248
248
|
}
|
|
249
249
|
|
|
250
250
|
if (run || dev) {
|
|
251
|
-
|
|
251
|
+
const cli_args = [];
|
|
252
|
+
if (dev) {
|
|
253
|
+
cli_args.push('-C', 'development'); // same as `--conditions`
|
|
254
|
+
}
|
|
255
|
+
cli_args.push(server_outpath);
|
|
256
|
+
server_process = spawn_restartable_process(cli_command, cli_args);
|
|
252
257
|
}
|
|
253
258
|
},
|
|
254
259
|
teardown: async () => {
|
package/src/lib/package.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type {Src_Json} from './src_json.js';
|
|
|
5
5
|
|
|
6
6
|
export const package_json = {
|
|
7
7
|
name: '@ryanatkn/gro',
|
|
8
|
-
version: '0.
|
|
8
|
+
version: '0.134.0',
|
|
9
9
|
description: 'task runner and toolkit extending SvelteKit',
|
|
10
10
|
motto: 'generate, run, optimize',
|
|
11
11
|
glyph: '🌰',
|
|
@@ -45,7 +45,7 @@ export const package_json = {
|
|
|
45
45
|
],
|
|
46
46
|
dependencies: {
|
|
47
47
|
'@ryanatkn/belt': '^0.24.12',
|
|
48
|
-
chokidar: '^
|
|
48
|
+
chokidar: '^4.0.0',
|
|
49
49
|
dotenv: '^16.4.5',
|
|
50
50
|
'es-module-lexer': '^1.5.4',
|
|
51
51
|
'esm-env': '^1.0.0',
|
|
@@ -53,29 +53,29 @@ export const package_json = {
|
|
|
53
53
|
prettier: '^3.3.3',
|
|
54
54
|
'prettier-plugin-svelte': '^3.2.6',
|
|
55
55
|
'ts-morph': '^23.0.0',
|
|
56
|
-
tslib: '^2.
|
|
56
|
+
tslib: '^2.7.0',
|
|
57
57
|
zod: '^3.23.8',
|
|
58
58
|
},
|
|
59
59
|
peerDependencies: {esbuild: '^0.21.0', svelte: '^5.0.0-next.0'},
|
|
60
60
|
devDependencies: {
|
|
61
61
|
'@changesets/changelog-git': '^0.2.0',
|
|
62
62
|
'@changesets/types': '^6.0.0',
|
|
63
|
-
'@ryanatkn/eslint-config': '^0.5.
|
|
64
|
-
'@ryanatkn/fuz': '^0.
|
|
65
|
-
'@ryanatkn/moss': '^0.
|
|
63
|
+
'@ryanatkn/eslint-config': '^0.5.3',
|
|
64
|
+
'@ryanatkn/fuz': '^0.121.0',
|
|
65
|
+
'@ryanatkn/moss': '^0.15.0',
|
|
66
66
|
'@sveltejs/adapter-static': '^3.0.4',
|
|
67
|
-
'@sveltejs/kit': '^2.5.
|
|
67
|
+
'@sveltejs/kit': '^2.5.26',
|
|
68
68
|
'@sveltejs/package': '^2.3.4',
|
|
69
|
-
'@sveltejs/vite-plugin-svelte': '^3.1.
|
|
69
|
+
'@sveltejs/vite-plugin-svelte': '^3.1.2',
|
|
70
70
|
'@types/fs-extra': '^11.0.4',
|
|
71
|
-
'@types/node': '^22.
|
|
71
|
+
'@types/node': '^22.5.4',
|
|
72
72
|
esbuild: '^0.21.5',
|
|
73
|
-
eslint: '^9.
|
|
73
|
+
eslint: '^9.10.0',
|
|
74
74
|
'eslint-plugin-svelte': '^2.43.0',
|
|
75
|
-
svelte: '^5.0.0-next.
|
|
76
|
-
'svelte-check': '^
|
|
77
|
-
typescript: '^5.
|
|
78
|
-
'typescript-eslint': '^8.
|
|
75
|
+
svelte: '^5.0.0-next.245',
|
|
76
|
+
'svelte-check': '^4.0.2',
|
|
77
|
+
typescript: '^5.6.2',
|
|
78
|
+
'typescript-eslint': '^8.5.0',
|
|
79
79
|
uvu: '^0.5.6',
|
|
80
80
|
},
|
|
81
81
|
prettier: {
|
|
@@ -268,7 +268,7 @@ export const package_json = {
|
|
|
268
268
|
|
|
269
269
|
export const src_json = {
|
|
270
270
|
name: '@ryanatkn/gro',
|
|
271
|
-
version: '0.
|
|
271
|
+
version: '0.134.0',
|
|
272
272
|
modules: {
|
|
273
273
|
'.': {
|
|
274
274
|
path: 'index.ts',
|
|
@@ -867,6 +867,7 @@ export const src_json = {
|
|
|
867
867
|
{name: 'has_sveltekit_app', kind: 'function'},
|
|
868
868
|
{name: 'has_sveltekit_library', kind: 'function'},
|
|
869
869
|
{name: 'sveltekit_sync', kind: 'function'},
|
|
870
|
+
{name: 'sveltekit_sync_if_available', kind: 'function'},
|
|
870
871
|
{name: 'sveltekit_sync_if_obviously_needed', kind: 'function'},
|
|
871
872
|
{name: 'Svelte_Package_Options', kind: 'type'},
|
|
872
873
|
],
|
package/src/lib/path.ts
CHANGED
|
@@ -65,6 +65,20 @@ export const sveltekit_sync = async (
|
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
67
|
|
|
68
|
+
// TODO maybe this shouldn't exist, instead error if `package.json` has SvelteKit but it's not found (with install message above)
|
|
69
|
+
/**
|
|
70
|
+
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
71
|
+
*/
|
|
72
|
+
export const sveltekit_sync_if_available = async (
|
|
73
|
+
sveltekit_cli: string | Cli = SVELTEKIT_CLI,
|
|
74
|
+
): Promise<void> => {
|
|
75
|
+
const found_sveltekit_cli =
|
|
76
|
+
typeof sveltekit_cli === 'string' ? find_cli(sveltekit_cli) : sveltekit_cli;
|
|
77
|
+
if (found_sveltekit_cli) {
|
|
78
|
+
return sveltekit_sync(found_sveltekit_cli);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
|
|
68
82
|
/**
|
|
69
83
|
* If the SvelteKit CLI is found and its `.svelte-kit` directory is not, run `svelte-kit sync`.
|
|
70
84
|
*/
|
|
@@ -4,7 +4,7 @@ import {z} from 'zod';
|
|
|
4
4
|
import {Task_Error, type Task} from './task.js';
|
|
5
5
|
import {serialize_args, to_forwarded_args} from './args.js';
|
|
6
6
|
import {find_cli, spawn_cli} from './cli.js';
|
|
7
|
-
import {SVELTE_CHECK_CLI,
|
|
7
|
+
import {SVELTE_CHECK_CLI, sveltekit_sync_if_available} from './sveltekit_helpers.js';
|
|
8
8
|
|
|
9
9
|
export const Args = z
|
|
10
10
|
.object({
|
|
@@ -24,7 +24,7 @@ export const task: Task<Args> = {
|
|
|
24
24
|
run: async ({args, log}): Promise<void> => {
|
|
25
25
|
const {svelte_check_cli, typescript_cli} = args;
|
|
26
26
|
|
|
27
|
-
await
|
|
27
|
+
await sveltekit_sync_if_available();
|
|
28
28
|
|
|
29
29
|
// Prefer svelte-check if available.
|
|
30
30
|
const found_svelte_check_cli = find_cli(svelte_check_cli);
|
package/src/lib/watch_dir.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import {watch, type ChokidarOptions, type FSWatcher} from 'chokidar';
|
|
2
2
|
import {relative} from 'node:path';
|
|
3
3
|
|
|
4
4
|
import type {Path_Filter} from './path.js';
|
|
@@ -23,7 +23,7 @@ export interface Options {
|
|
|
23
23
|
dir: string;
|
|
24
24
|
on_change: Watcher_Change_Callback;
|
|
25
25
|
filter?: Path_Filter | null | undefined;
|
|
26
|
-
chokidar?:
|
|
26
|
+
chokidar?: ChokidarOptions;
|
|
27
27
|
/**
|
|
28
28
|
* When `false`, returns the `path` relative to `dir`.
|
|
29
29
|
* @default true
|
|
@@ -39,13 +39,13 @@ export const watch_dir = ({
|
|
|
39
39
|
on_change,
|
|
40
40
|
filter,
|
|
41
41
|
absolute = true,
|
|
42
|
-
chokidar
|
|
42
|
+
chokidar = {},
|
|
43
43
|
}: Options): Watch_Node_Fs => {
|
|
44
|
-
let watcher:
|
|
44
|
+
let watcher: FSWatcher | undefined;
|
|
45
45
|
|
|
46
46
|
return {
|
|
47
47
|
init: async () => {
|
|
48
|
-
watcher =
|
|
48
|
+
watcher = watch(dir, chokidar);
|
|
49
49
|
watcher.on('add', (path, s) => {
|
|
50
50
|
const stats = s ?? statSync(path);
|
|
51
51
|
const final_path = absolute ? path : relative(dir, path);
|