@reliverse/dler 1.7.94 → 1.7.96
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/bin/app/better/auth/cmd.js +4 -2
- package/bin/app/build/impl.d.ts +1 -1
- package/bin/app/build/postbuild.js +1 -1
- package/bin/app/build/prebuild.js +1 -1
- package/bin/app/cli/impl.js +1 -1
- package/bin/app/cmds.d.ts +71 -4
- package/bin/app/cmds.js +25 -3
- package/bin/app/config/cfg-def-utils.js +3 -3
- package/bin/app/config/cfg-detect.js +1 -1
- package/bin/app/config/cfg-prepare.js +1 -1
- package/bin/app/config/cfg-reltypes-content.js +1 -1
- package/bin/app/config/constants.d.ts +1 -1
- package/bin/app/config/constants.js +1 -1
- package/bin/app/init/init-utils/mm-deprecated/editor-menu.js +2 -2
- package/bin/app/init/mm-deprecated/drizzle/manageDrizzleSchema.js +1 -1
- package/bin/app/init/mm-deprecated/feature-add.js +2 -2
- package/bin/app/init/mm-deprecated/feature-rm.js +5 -5
- package/bin/app/init/use-template/cp-impl.js +1 -1
- package/bin/app/migrate/codemods/anything-bun.js +1 -1
- package/bin/app/providers/better-t-stack/packed/addons.js +1 -1
- package/bin/app/providers/better-t-stack/packed/api.js +2 -2
- package/bin/app/providers/better-t-stack/packed/auth.js +3 -3
- package/bin/app/providers/better-t-stack/packed/backend.js +1 -1
- package/bin/app/providers/better-t-stack/packed/examples.js +3 -3
- package/bin/app/providers/better-t-stack/packed/frontend.js +6 -6
- package/bin/app/providers/better-t-stack/types.d.ts +7 -7
- package/bin/app/pub/impl.d.ts +1 -1
- package/bin/app/rempts/cmd.js +15 -15
- package/bin/app/utils/downloading/downloadI18nFiles.js +4 -4
- package/bin/app/utils/schemaMemory.d.ts +1 -1
- package/bin/app/web/README.md +1 -1
- package/bin/dler.js +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ import { relinka } from "@reliverse/relinka";
|
|
|
4
4
|
import { defineArgs, defineCommand, runCmd } from "@reliverse/rempts";
|
|
5
5
|
import { execaCommand } from "execa";
|
|
6
6
|
import MagicString from "magic-string";
|
|
7
|
-
import {
|
|
7
|
+
import { getBetterAuthGenerateCmd } from "../../cmds.js";
|
|
8
8
|
import { configPath, schemaPath } from "./consts.js";
|
|
9
9
|
const notice = `/**
|
|
10
10
|
* THIS FILE IS AUTO-GENERATED - DO NOT EDIT DIRECTLY
|
|
@@ -43,7 +43,9 @@ export default defineCommand({
|
|
|
43
43
|
relinka("error", "Schema file does not exist; tried:", args.schema);
|
|
44
44
|
process.exit(1);
|
|
45
45
|
}
|
|
46
|
-
await runCmd(await
|
|
46
|
+
await runCmd(await getBetterAuthGenerateCmd(), [
|
|
47
|
+
`--config ${configPath} --output ${schemaPath}`
|
|
48
|
+
]);
|
|
47
49
|
const filePath = path.resolve(schemaPath);
|
|
48
50
|
const originalContent = await fs.readFile(filePath, "utf8");
|
|
49
51
|
const s = new MagicString(originalContent);
|
package/bin/app/build/impl.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import type { DlerConfig } from "../types/mod.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Main entry point for the dler build process.
|
|
4
4
|
* Handles building for both main project and libraries.
|
|
5
|
-
* @see `src/app/pub/impl.ts` for pub main function implementation.
|
|
5
|
+
* @see `src-ts/app/pub/impl.ts` for pub main function implementation.
|
|
6
6
|
*/
|
|
7
7
|
export declare function dlerBuild(isDev: boolean, config?: DlerConfig, debugOnlyCopyNonBuildFiles?: boolean, debugDontCopyNonBuildFiles?: boolean, disableOwnSpinner?: boolean): Promise<{
|
|
8
8
|
timer: any;
|
|
@@ -3,7 +3,7 @@ import fs from "@reliverse/relifso";
|
|
|
3
3
|
import { relinka } from "@reliverse/relinka";
|
|
4
4
|
import { runCmd } from "@reliverse/rempts";
|
|
5
5
|
import { glob } from "tinyglobby";
|
|
6
|
-
import { getCheckCmd } from "
|
|
6
|
+
import { getCheckCmd } from "../cmds.js";
|
|
7
7
|
import { PROJECT_ROOT } from "../config/constants.js";
|
|
8
8
|
import { getConfigDler } from "../config/load.js";
|
|
9
9
|
import { applyMagicSpells } from "../magic/magic-apply.js";
|
|
@@ -3,7 +3,7 @@ import fs from "@reliverse/relifso";
|
|
|
3
3
|
import { relinka } from "@reliverse/relinka";
|
|
4
4
|
import { runCmd } from "@reliverse/rempts";
|
|
5
5
|
import { glob } from "tinyglobby";
|
|
6
|
-
import { getCheckCmd } from "
|
|
6
|
+
import { getCheckCmd } from "../cmds.js";
|
|
7
7
|
import { PROJECT_ROOT } from "../config/constants.js";
|
|
8
8
|
import { executeCommand, executeDlerHooks, isCommandAvailable } from "./ppb-utils.js";
|
|
9
9
|
const createToolRunner = () => ({
|
package/bin/app/cli/impl.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { runCmd, selectPrompt } from "@reliverse/rempts";
|
|
2
2
|
import { generate } from "random-words";
|
|
3
|
-
import { getWebCmd } from "@/app/cmds";
|
|
4
3
|
import { aiMenu } from "../ai/ai-menu.js";
|
|
4
|
+
import { getWebCmd } from "../cmds.js";
|
|
5
5
|
import { detectProject } from "../config/cfg-detect.js";
|
|
6
6
|
import { cliJsrPath, UNKNOWN_VALUE } from "../config/constants.js";
|
|
7
7
|
import { ad, getRandomMessage, getWelcomeTitle, premium } from "../db/messages.js";
|
package/bin/app/cmds.d.ts
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import type { Command } from "@reliverse/rempts";
|
|
2
|
-
export declare const getWebCmd: () => Promise<Command<import("@reliverse/rempts").EmptyArgs>>;
|
|
3
|
-
export declare const getAuthCmd: () => Promise<Command<import("@reliverse/rempts").EmptyArgs>>;
|
|
4
|
-
export declare const getAuthGenerateCmd: () => Promise<Command<import("@reliverse/rempts").EmptyArgs>>;
|
|
5
2
|
interface CommandArgsMap {
|
|
3
|
+
add: {};
|
|
6
4
|
agg: {
|
|
7
5
|
imports?: boolean;
|
|
8
6
|
input?: string;
|
|
@@ -21,13 +19,26 @@ interface CommandArgsMap {
|
|
|
21
19
|
typesOut?: string;
|
|
22
20
|
nonInteractive?: boolean;
|
|
23
21
|
};
|
|
22
|
+
ai: {};
|
|
23
|
+
better_auth: {
|
|
24
|
+
config: string;
|
|
25
|
+
schema: string;
|
|
26
|
+
};
|
|
27
|
+
better_auth_generate: {};
|
|
28
|
+
better_auth_generateSecret: {};
|
|
29
|
+
better_auth_init: {};
|
|
30
|
+
better_auth_migrate: {
|
|
31
|
+
cwd?: string;
|
|
32
|
+
config?: string;
|
|
33
|
+
y?: boolean;
|
|
34
|
+
};
|
|
24
35
|
build: {
|
|
25
36
|
dev?: boolean;
|
|
26
37
|
debugOnlyCopyNonBuildFiles?: boolean;
|
|
27
38
|
debugDontCopyNonBuildFiles?: boolean;
|
|
28
39
|
};
|
|
29
40
|
build_binary: {
|
|
30
|
-
input
|
|
41
|
+
input: string;
|
|
31
42
|
targets?: string;
|
|
32
43
|
outdir?: string;
|
|
33
44
|
minify?: boolean;
|
|
@@ -37,6 +48,10 @@ interface CommandArgsMap {
|
|
|
37
48
|
parallel?: boolean;
|
|
38
49
|
external?: string[];
|
|
39
50
|
};
|
|
51
|
+
catalog: {
|
|
52
|
+
action?: string;
|
|
53
|
+
cwd?: string;
|
|
54
|
+
};
|
|
40
55
|
check: {
|
|
41
56
|
dev?: boolean;
|
|
42
57
|
directory?: string;
|
|
@@ -52,6 +67,14 @@ interface CommandArgsMap {
|
|
|
52
67
|
fix?: boolean;
|
|
53
68
|
depth?: number;
|
|
54
69
|
};
|
|
70
|
+
cli: {};
|
|
71
|
+
clone: {};
|
|
72
|
+
cmod: {};
|
|
73
|
+
config: {
|
|
74
|
+
mode?: string;
|
|
75
|
+
tool?: string;
|
|
76
|
+
update?: boolean;
|
|
77
|
+
};
|
|
55
78
|
conv: {};
|
|
56
79
|
create: {
|
|
57
80
|
template?: string;
|
|
@@ -63,6 +86,7 @@ interface CommandArgsMap {
|
|
|
63
86
|
concurrency?: string;
|
|
64
87
|
cwd?: string;
|
|
65
88
|
};
|
|
89
|
+
env: {};
|
|
66
90
|
fs: {
|
|
67
91
|
mode: "copy" | "rm" | "rename";
|
|
68
92
|
target: string;
|
|
@@ -79,6 +103,7 @@ interface CommandArgsMap {
|
|
|
79
103
|
useDtsTxtForPrepareMyCLI?: boolean;
|
|
80
104
|
};
|
|
81
105
|
get: {};
|
|
106
|
+
help: {};
|
|
82
107
|
init: {};
|
|
83
108
|
inject: {};
|
|
84
109
|
install: {
|
|
@@ -90,11 +115,15 @@ interface CommandArgsMap {
|
|
|
90
115
|
silent?: boolean;
|
|
91
116
|
recreateLockFile?: boolean;
|
|
92
117
|
linter?: boolean;
|
|
118
|
+
filter?: string[];
|
|
93
119
|
};
|
|
120
|
+
invoke: {};
|
|
94
121
|
libs: {
|
|
95
122
|
init: string;
|
|
96
123
|
overwrite?: boolean;
|
|
97
124
|
};
|
|
125
|
+
login: {};
|
|
126
|
+
logout: {};
|
|
98
127
|
magic: {
|
|
99
128
|
targets: string[];
|
|
100
129
|
lib?: string;
|
|
@@ -103,6 +132,7 @@ interface CommandArgsMap {
|
|
|
103
132
|
stopOnError?: boolean;
|
|
104
133
|
about?: boolean;
|
|
105
134
|
};
|
|
135
|
+
memory: {};
|
|
106
136
|
merge: {
|
|
107
137
|
s?: string[];
|
|
108
138
|
d?: string;
|
|
@@ -142,6 +172,7 @@ interface CommandArgsMap {
|
|
|
142
172
|
minify?: boolean;
|
|
143
173
|
target?: string;
|
|
144
174
|
};
|
|
175
|
+
mrse: {};
|
|
145
176
|
pack: {
|
|
146
177
|
input: string;
|
|
147
178
|
output?: string;
|
|
@@ -170,6 +201,7 @@ interface CommandArgsMap {
|
|
|
170
201
|
workspace?: boolean;
|
|
171
202
|
silent?: boolean;
|
|
172
203
|
linter?: boolean;
|
|
204
|
+
filter?: string[];
|
|
173
205
|
standalone?: boolean;
|
|
174
206
|
};
|
|
175
207
|
rempts: {
|
|
@@ -179,11 +211,14 @@ interface CommandArgsMap {
|
|
|
179
211
|
outFile?: string;
|
|
180
212
|
cmdDirs?: string[];
|
|
181
213
|
};
|
|
214
|
+
schema: {};
|
|
182
215
|
split: {
|
|
183
216
|
directory: string;
|
|
184
217
|
fileLineThreshold: number;
|
|
185
218
|
funcLineThreshold: number;
|
|
186
219
|
};
|
|
220
|
+
studio: {};
|
|
221
|
+
toolbox: {};
|
|
187
222
|
transform: {};
|
|
188
223
|
update: {
|
|
189
224
|
name?: string[];
|
|
@@ -192,10 +227,17 @@ interface CommandArgsMap {
|
|
|
192
227
|
linker?: "isolated" | "hoisted";
|
|
193
228
|
global?: boolean;
|
|
194
229
|
interactive?: boolean;
|
|
230
|
+
filter?: string[];
|
|
231
|
+
recursive?: boolean;
|
|
232
|
+
};
|
|
233
|
+
update_migrate: {
|
|
234
|
+
interactive?: boolean;
|
|
195
235
|
};
|
|
196
236
|
upgrade: {
|
|
197
237
|
interactive?: boolean;
|
|
198
238
|
};
|
|
239
|
+
upload: {};
|
|
240
|
+
web: {};
|
|
199
241
|
x: {
|
|
200
242
|
action: string;
|
|
201
243
|
name?: string;
|
|
@@ -214,31 +256,56 @@ interface CommandArgsMap {
|
|
|
214
256
|
};
|
|
215
257
|
}
|
|
216
258
|
export declare function loadTypedCommand<T extends keyof CommandArgsMap>(cmdName: T): Promise<Command>;
|
|
259
|
+
export declare const getAddCmd: () => Promise<Command>;
|
|
217
260
|
export declare const getAggCmd: () => Promise<Command>;
|
|
261
|
+
export declare const getAiCmd: () => Promise<Command>;
|
|
262
|
+
export declare const getBetterAuthCmd: () => Promise<Command>;
|
|
263
|
+
export declare const getBetterAuthGenerateCmd: () => Promise<Command>;
|
|
264
|
+
export declare const getBetterAuthGenerateSecretCmd: () => Promise<Command>;
|
|
265
|
+
export declare const getBetterAuthInitCmd: () => Promise<Command>;
|
|
266
|
+
export declare const getBetterAuthMigrateCmd: () => Promise<Command>;
|
|
218
267
|
export declare const getBuildCmd: () => Promise<Command>;
|
|
219
268
|
export declare const getBuildBinaryCmd: () => Promise<Command>;
|
|
269
|
+
export declare const getCatalogCmd: () => Promise<Command>;
|
|
220
270
|
export declare const getCheckCmd: () => Promise<Command>;
|
|
271
|
+
export declare const getCliCmd: () => Promise<Command>;
|
|
272
|
+
export declare const getCloneCmd: () => Promise<Command>;
|
|
273
|
+
export declare const getCmodCmd: () => Promise<Command>;
|
|
274
|
+
export declare const getConfigCmd: () => Promise<Command>;
|
|
221
275
|
export declare const getConvCmd: () => Promise<Command>;
|
|
222
276
|
export declare const getCreateCmd: () => Promise<Command>;
|
|
277
|
+
export declare const getEnvCmd: () => Promise<Command>;
|
|
223
278
|
export declare const getFsCmd: () => Promise<Command>;
|
|
224
279
|
export declare const getGetCmd: () => Promise<Command>;
|
|
280
|
+
export declare const getHelpCmd: () => Promise<Command>;
|
|
225
281
|
export declare const getInitCmd: () => Promise<Command>;
|
|
226
282
|
export declare const getInjectCmd: () => Promise<Command>;
|
|
227
283
|
export declare const getInstallCmd: () => Promise<Command>;
|
|
284
|
+
export declare const getInvokeCmd: () => Promise<Command>;
|
|
228
285
|
export declare const getLibsCmd: () => Promise<Command>;
|
|
286
|
+
export declare const getLoginCmd: () => Promise<Command>;
|
|
287
|
+
export declare const getLogoutCmd: () => Promise<Command>;
|
|
229
288
|
export declare const getMagicCmd: () => Promise<Command>;
|
|
289
|
+
export declare const getMemoryCmd: () => Promise<Command>;
|
|
230
290
|
export declare const getMergeCmd: () => Promise<Command>;
|
|
231
291
|
export declare const getMigrateCmd: () => Promise<Command>;
|
|
232
292
|
export declare const getMkdistCmd: () => Promise<Command>;
|
|
293
|
+
export declare const getMrseCmd: () => Promise<Command>;
|
|
233
294
|
export declare const getPackCmd: () => Promise<Command>;
|
|
234
295
|
export declare const getPubCmd: () => Promise<Command>;
|
|
235
296
|
export declare const getRemdnCmd: () => Promise<Command>;
|
|
236
297
|
export declare const getRemoveCmd: () => Promise<Command>;
|
|
237
298
|
export declare const getRemptsCmd: () => Promise<Command>;
|
|
299
|
+
export declare const getSchemaCmd: () => Promise<Command>;
|
|
238
300
|
export declare const getSplitCmd: () => Promise<Command>;
|
|
301
|
+
export declare const getStudioCmd: () => Promise<Command>;
|
|
302
|
+
export declare const getToolboxCmd: () => Promise<Command>;
|
|
239
303
|
export declare const getTransformCmd: () => Promise<Command>;
|
|
240
304
|
export declare const getUpdateCmd: () => Promise<Command>;
|
|
305
|
+
export declare const getUpdateMigrateCmd: () => Promise<Command>;
|
|
241
306
|
export declare const getUpgradeCmd: () => Promise<Command>;
|
|
307
|
+
export declare const getUploadCmd: () => Promise<Command>;
|
|
308
|
+
export declare const getWebCmd: () => Promise<Command>;
|
|
242
309
|
export declare const getXCmd: () => Promise<Command>;
|
|
243
310
|
export declare function callCmd<T extends keyof CommandArgsMap>(cmdName: T, args?: CommandArgsMap[T]): Promise<void>;
|
|
244
311
|
export declare function getTypedCmd<T extends keyof CommandArgsMap>(cmdName: T): Promise<{
|
package/bin/app/cmds.js
CHANGED
|
@@ -1,35 +1,57 @@
|
|
|
1
1
|
import { callCmdImpl, getTypedCmdImpl, loadCommand } from "@reliverse/rempts";
|
|
2
|
-
export const getWebCmd = async () => await loadCommand("./web/cmd");
|
|
3
|
-
export const getAuthCmd = async () => await loadCommand("./auth/cmd");
|
|
4
|
-
export const getAuthGenerateCmd = async () => await loadCommand("./auth/generate/cmd");
|
|
5
2
|
export async function loadTypedCommand(cmdName) {
|
|
6
3
|
return await loadCommand(cmdName);
|
|
7
4
|
}
|
|
5
|
+
export const getAddCmd = async () => loadTypedCommand("add");
|
|
8
6
|
export const getAggCmd = async () => loadTypedCommand("agg");
|
|
7
|
+
export const getAiCmd = async () => loadTypedCommand("ai");
|
|
8
|
+
export const getBetterAuthCmd = async () => loadTypedCommand("better_auth");
|
|
9
|
+
export const getBetterAuthGenerateCmd = async () => loadTypedCommand("better_auth_generate");
|
|
10
|
+
export const getBetterAuthGenerateSecretCmd = async () => loadTypedCommand("better_auth_generateSecret");
|
|
11
|
+
export const getBetterAuthInitCmd = async () => loadTypedCommand("better_auth_init");
|
|
12
|
+
export const getBetterAuthMigrateCmd = async () => loadTypedCommand("better_auth_migrate");
|
|
9
13
|
export const getBuildCmd = async () => loadTypedCommand("build");
|
|
10
14
|
export const getBuildBinaryCmd = async () => loadTypedCommand("build_binary");
|
|
15
|
+
export const getCatalogCmd = async () => loadTypedCommand("catalog");
|
|
11
16
|
export const getCheckCmd = async () => loadTypedCommand("check");
|
|
17
|
+
export const getCliCmd = async () => loadTypedCommand("cli");
|
|
18
|
+
export const getCloneCmd = async () => loadTypedCommand("clone");
|
|
19
|
+
export const getCmodCmd = async () => loadTypedCommand("cmod");
|
|
20
|
+
export const getConfigCmd = async () => loadTypedCommand("config");
|
|
12
21
|
export const getConvCmd = async () => loadTypedCommand("conv");
|
|
13
22
|
export const getCreateCmd = async () => loadTypedCommand("create");
|
|
23
|
+
export const getEnvCmd = async () => loadTypedCommand("env");
|
|
14
24
|
export const getFsCmd = async () => loadTypedCommand("fs");
|
|
15
25
|
export const getGetCmd = async () => loadTypedCommand("get");
|
|
26
|
+
export const getHelpCmd = async () => loadTypedCommand("help");
|
|
16
27
|
export const getInitCmd = async () => loadTypedCommand("init");
|
|
17
28
|
export const getInjectCmd = async () => loadTypedCommand("inject");
|
|
18
29
|
export const getInstallCmd = async () => loadTypedCommand("install");
|
|
30
|
+
export const getInvokeCmd = async () => loadTypedCommand("invoke");
|
|
19
31
|
export const getLibsCmd = async () => loadTypedCommand("libs");
|
|
32
|
+
export const getLoginCmd = async () => loadTypedCommand("login");
|
|
33
|
+
export const getLogoutCmd = async () => loadTypedCommand("logout");
|
|
20
34
|
export const getMagicCmd = async () => loadTypedCommand("magic");
|
|
35
|
+
export const getMemoryCmd = async () => loadTypedCommand("memory");
|
|
21
36
|
export const getMergeCmd = async () => loadTypedCommand("merge");
|
|
22
37
|
export const getMigrateCmd = async () => loadTypedCommand("migrate");
|
|
23
38
|
export const getMkdistCmd = async () => loadTypedCommand("mkdist");
|
|
39
|
+
export const getMrseCmd = async () => loadTypedCommand("mrse");
|
|
24
40
|
export const getPackCmd = async () => loadTypedCommand("pack");
|
|
25
41
|
export const getPubCmd = async () => loadTypedCommand("pub");
|
|
26
42
|
export const getRemdnCmd = async () => loadTypedCommand("remdn");
|
|
27
43
|
export const getRemoveCmd = async () => loadTypedCommand("remove");
|
|
28
44
|
export const getRemptsCmd = async () => loadTypedCommand("rempts");
|
|
45
|
+
export const getSchemaCmd = async () => loadTypedCommand("schema");
|
|
29
46
|
export const getSplitCmd = async () => loadTypedCommand("split");
|
|
47
|
+
export const getStudioCmd = async () => loadTypedCommand("studio");
|
|
48
|
+
export const getToolboxCmd = async () => loadTypedCommand("toolbox");
|
|
30
49
|
export const getTransformCmd = async () => loadTypedCommand("transform");
|
|
31
50
|
export const getUpdateCmd = async () => loadTypedCommand("update");
|
|
51
|
+
export const getUpdateMigrateCmd = async () => loadTypedCommand("update_migrate");
|
|
32
52
|
export const getUpgradeCmd = async () => loadTypedCommand("upgrade");
|
|
53
|
+
export const getUploadCmd = async () => loadTypedCommand("upload");
|
|
54
|
+
export const getWebCmd = async () => loadTypedCommand("web");
|
|
33
55
|
export const getXCmd = async () => loadTypedCommand("x");
|
|
34
56
|
export async function callCmd(cmdName, args) {
|
|
35
57
|
await callCmdImpl(cmdName, args);
|
|
@@ -87,10 +87,10 @@ export async function generateDefaultRulesForProject(projectPath, isDev) {
|
|
|
87
87
|
const hasPrismaFile = await fs.pathExists(path.join(projectPath, "prisma/schema.prisma"));
|
|
88
88
|
const hasDrizzleFile = await fs.pathExists(path.join(projectPath, "drizzle.config.ts"));
|
|
89
89
|
const hasNextAuthDir = await fs.pathExists(
|
|
90
|
-
path.join(projectPath, "src/app/api/auth/[...nextauth]")
|
|
90
|
+
path.join(projectPath, "src-ts/app/api/auth/[...nextauth]")
|
|
91
91
|
);
|
|
92
92
|
const hasBetterAuthFile = await fs.pathExists(
|
|
93
|
-
path.join(projectPath, "src/app/api/auth/[...all]/route.ts")
|
|
93
|
+
path.join(projectPath, "src-ts/app/api/auth/[...all]/route.ts")
|
|
94
94
|
);
|
|
95
95
|
const hasShadcnUi = await fs.pathExists(path.join(projectPath, "components/ui"));
|
|
96
96
|
const hasClerk = "@clerk/nextjs" in deps;
|
|
@@ -120,7 +120,7 @@ export async function generateDefaultRulesForProject(projectPath, isDev) {
|
|
|
120
120
|
const hasHono = "hono" in deps;
|
|
121
121
|
const hasTrpc = "@trpc/server" in deps;
|
|
122
122
|
const hasGraphql = "graphql" in deps || "apollo-server" in deps;
|
|
123
|
-
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src/app/api"));
|
|
123
|
+
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/app/api"));
|
|
124
124
|
const hasPg = "pg" in deps || "@neondatabase/serverless" in deps;
|
|
125
125
|
const hasMysql = "mysql" in deps || "mysql2" in deps;
|
|
126
126
|
const hasSqlite = "sqlite" in deps || "sqlite3" in deps || "better-sqlite3" in deps;
|
|
@@ -160,7 +160,7 @@ export async function detectFeatures(projectPath, packageJson) {
|
|
|
160
160
|
const hasHono = "hono" in deps;
|
|
161
161
|
const hasTrpc = "@trpc/server" in deps;
|
|
162
162
|
const hasGraphql = "graphql" in deps || "apollo-server" in deps;
|
|
163
|
-
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src/app/api"));
|
|
163
|
+
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/app/api"));
|
|
164
164
|
const hasEslint = "eslint" in deps;
|
|
165
165
|
const hasBiome = "@biomejs/biome" in deps;
|
|
166
166
|
const hasStripe = "stripe" in deps || "@stripe/stripe-js" in deps;
|
|
@@ -1062,7 +1062,7 @@ export const DEFAULT_CONFIG_RELIVERSE: ReliverseConfig = {
|
|
|
1062
1062
|
enabled: false,
|
|
1063
1063
|
format: "HH:mm:ss",
|
|
1064
1064
|
},
|
|
1065
|
-
cleanupInterval:
|
|
1065
|
+
cleanupInterval: 10_000, // 10 seconds
|
|
1066
1066
|
bufferSize: 4096, // 4KB
|
|
1067
1067
|
maxBufferAge: 5000, // 5 seconds
|
|
1068
1068
|
levels: {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export declare const PROJECT_ROOT: string;
|
|
2
|
-
export declare const cliVersion = "1.7.
|
|
2
|
+
export declare const cliVersion = "1.7.96";
|
|
3
3
|
export declare const cliName = "@reliverse/rse";
|
|
4
4
|
export declare const rseName = "@reliverse/rse";
|
|
5
5
|
export declare const dlerName = "@reliverse/dler";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import os from "node:os";
|
|
2
2
|
import path from "@reliverse/pathkit";
|
|
3
3
|
export const PROJECT_ROOT = path.resolve(process.cwd());
|
|
4
|
-
const version = "1.7.
|
|
4
|
+
const version = "1.7.96";
|
|
5
5
|
export const cliVersion = version;
|
|
6
6
|
export const cliName = "@reliverse/rse";
|
|
7
7
|
export const rseName = "@reliverse/rse";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { re } from "@reliverse/relico";
|
|
2
2
|
import { relinka } from "@reliverse/relinka";
|
|
3
3
|
import { inputPrompt, runCmd, selectPrompt } from "@reliverse/rempts";
|
|
4
|
-
import { getAuthCmd } from "@/app/cmds";
|
|
5
4
|
import { useLanguine } from "../../../add/add-local/i18n/languine.js";
|
|
5
|
+
import { getBetterAuthCmd } from "../../../cmds.js";
|
|
6
6
|
import { getProjectContent } from "../../../config/cfg-content.js";
|
|
7
7
|
import { envArgImpl } from "../../../env/env-impl.js";
|
|
8
8
|
import { manageDrizzleSchema } from "../../mm-deprecated/drizzle/manageDrizzleSchema.js";
|
|
@@ -148,7 +148,7 @@ export async function handleOpenProjectMenu(projects, isDev, memory, cwd, maskIn
|
|
|
148
148
|
relinka("info", "The following args will be passed to the rse auth command:");
|
|
149
149
|
relinka("log", `--config ${selectedProject.path}/src/lib/auth.ts`);
|
|
150
150
|
relinka("log", `--output ${selectedProject.path}/src/db/schema/user/tables.ts`);
|
|
151
|
-
await runCmd(await
|
|
151
|
+
await runCmd(await getBetterAuthCmd(), [
|
|
152
152
|
`--config ${selectedProject.path}/src/lib/auth.ts --output ${selectedProject.path}/src/db/schema/user/tables.ts`
|
|
153
153
|
]);
|
|
154
154
|
break;
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
setupDrizzle
|
|
12
12
|
} from "./manageDrizzleSchemaUtils.js";
|
|
13
13
|
export async function manageDrizzleSchema(cwd, isDev) {
|
|
14
|
-
const singleSchemaDir = isDev ? path.join(cwd, "src/app/db") : path.join(cwd, "src/db");
|
|
14
|
+
const singleSchemaDir = isDev ? path.join(cwd, "src-ts/app/db") : path.join(cwd, "src/db");
|
|
15
15
|
const multiSchemaDir = path.join(singleSchemaDir, "schema");
|
|
16
16
|
let provider = await detectDatabaseProvider(cwd);
|
|
17
17
|
if (!provider) {
|
|
@@ -347,7 +347,7 @@ export const INTEGRATION_CONFIGS = {
|
|
|
347
347
|
} = authClient;`
|
|
348
348
|
},
|
|
349
349
|
{
|
|
350
|
-
path: "src/app/auth/sign-in/page.tsx",
|
|
350
|
+
path: "src-ts/app/auth/sign-in/page.tsx",
|
|
351
351
|
content: `"use client";
|
|
352
352
|
import { useState } from "react";
|
|
353
353
|
import { authClient } from "@/lib/auth-client";
|
|
@@ -430,7 +430,7 @@ export const INTEGRATION_CONFIGS = {
|
|
|
430
430
|
}`
|
|
431
431
|
},
|
|
432
432
|
{
|
|
433
|
-
path: "src/app/auth/error/page.tsx",
|
|
433
|
+
path: "src-ts/app/auth/error/page.tsx",
|
|
434
434
|
content: `"use client";
|
|
435
435
|
import { useSearchParams } from "next/navigation";
|
|
436
436
|
export default function AuthErrorPage() {
|
|
@@ -29,11 +29,11 @@ export const REMOVAL_CONFIGS = {
|
|
|
29
29
|
files: [
|
|
30
30
|
"src/lib/auth.ts",
|
|
31
31
|
"src/lib/auth-client.ts",
|
|
32
|
-
"src/app/api/auth/[...nextauth]/route.ts",
|
|
33
|
-
"src/app/api/auth/[...all]/route.ts",
|
|
32
|
+
"src-ts/app/api/auth/[...nextauth]/route.ts",
|
|
33
|
+
"src-ts/app/api/auth/[...all]/route.ts",
|
|
34
34
|
"middleware.ts"
|
|
35
35
|
],
|
|
36
|
-
directories: ["src/app/api/auth"],
|
|
36
|
+
directories: ["src-ts/app/api/auth"],
|
|
37
37
|
scripts: ["db:generate", "db:migrate"],
|
|
38
38
|
envVars: [
|
|
39
39
|
"NEXTAUTH_SECRET",
|
|
@@ -54,8 +54,8 @@ export const REMOVAL_CONFIGS = {
|
|
|
54
54
|
name: "Payments",
|
|
55
55
|
dependencies: ["stripe", "@polar-sh/sdk"],
|
|
56
56
|
devDependencies: [],
|
|
57
|
-
files: ["src/lib/stripe.ts", "src/app/api/stripe/webhook/route.ts"],
|
|
58
|
-
directories: ["src/app/api/stripe"],
|
|
57
|
+
files: ["src/lib/stripe.ts", "src-ts/app/api/stripe/webhook/route.ts"],
|
|
58
|
+
directories: ["src-ts/app/api/stripe"],
|
|
59
59
|
scripts: [],
|
|
60
60
|
envVars: ["STRIPE_SECRET_KEY", "STRIPE_WEBHOOK_SECRET", "STRIPE_PRICE_ID", "POLAR_TOKEN"]
|
|
61
61
|
},
|
|
@@ -70,7 +70,7 @@ export async function initializeProjectConfig(projectName, _memory, config, skip
|
|
|
70
70
|
};
|
|
71
71
|
}
|
|
72
72
|
export async function setupI18nSupport(projectPath, config) {
|
|
73
|
-
const i18nFolderExists = await fs.pathExists(path.join(projectPath, "src/app/[locale]")) || await fs.pathExists(path.join(projectPath, "src/app/[lang]"));
|
|
73
|
+
const i18nFolderExists = await fs.pathExists(path.join(projectPath, "src-ts/app/[locale]")) || await fs.pathExists(path.join(projectPath, "src-ts/app/[lang]"));
|
|
74
74
|
if (i18nFolderExists) {
|
|
75
75
|
relinka("verbose", "i18n is already enabled in the template. No changes needed.");
|
|
76
76
|
return true;
|
|
@@ -397,7 +397,7 @@ compilerOptions = "tsconfig.json"
|
|
|
397
397
|
const generateDockerfile = (analysis) => {
|
|
398
398
|
return `# Use Bun's official image
|
|
399
399
|
FROM oven/bun:1 as base
|
|
400
|
-
WORKDIR /usr/src/app
|
|
400
|
+
WORKDIR /usr/src-ts/app
|
|
401
401
|
# Install dependencies
|
|
402
402
|
COPY package.json bun.lock* ./
|
|
403
403
|
RUN bun install --frozen-lockfile
|
|
@@ -146,7 +146,7 @@ export const DLER_TPL_ADDONS = {
|
|
|
146
146
|
type: "binary",
|
|
147
147
|
binaryHash: "dee83fc2fb"
|
|
148
148
|
},
|
|
149
|
-
"addons/pwa/apps/web/next/src/app/manifest.ts.hbs": {
|
|
149
|
+
"addons/pwa/apps/web/next/src-ts/app/manifest.ts.hbs": {
|
|
150
150
|
metadata: {
|
|
151
151
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
152
152
|
updatedHash: "6f8734ebe6"
|
|
@@ -188,7 +188,7 @@ export const protectedProcedure = publicProcedure.use(requireAuth);
|
|
|
188
188
|
`,
|
|
189
189
|
type: "text"
|
|
190
190
|
},
|
|
191
|
-
"api/orpc/server/next/src/app/rpc/[...all]/route.ts.hbs": {
|
|
191
|
+
"api/orpc/server/next/src-ts/app/rpc/[...all]/route.ts.hbs": {
|
|
192
192
|
metadata: {
|
|
193
193
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
194
194
|
updatedHash: "cdf4279672"
|
|
@@ -556,7 +556,7 @@ export const protectedProcedure = t.procedure.use(({ ctx, next }) => {
|
|
|
556
556
|
`,
|
|
557
557
|
type: "text"
|
|
558
558
|
},
|
|
559
|
-
"api/trpc/server/next/src/app/trpc/[trpc]/route.ts": {
|
|
559
|
+
"api/trpc/server/next/src-ts/app/trpc/[trpc]/route.ts": {
|
|
560
560
|
metadata: {
|
|
561
561
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
562
562
|
updatedHash: "1316017eae"
|
|
@@ -1403,7 +1403,7 @@ model Verification {
|
|
|
1403
1403
|
`,
|
|
1404
1404
|
type: "text"
|
|
1405
1405
|
},
|
|
1406
|
-
"auth/server/next/src/app/api/auth/[...all]/route.ts": {
|
|
1406
|
+
"auth/server/next/src-ts/app/api/auth/[...all]/route.ts": {
|
|
1407
1407
|
metadata: {
|
|
1408
1408
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
1409
1409
|
updatedHash: "1eeae5d0e3"
|
|
@@ -1727,7 +1727,7 @@ export const authClient = createAuthClient({
|
|
|
1727
1727
|
`,
|
|
1728
1728
|
type: "text"
|
|
1729
1729
|
},
|
|
1730
|
-
"auth/web/react/next/src/app/dashboard/page.tsx.hbs": {
|
|
1730
|
+
"auth/web/react/next/src-ts/app/dashboard/page.tsx.hbs": {
|
|
1731
1731
|
metadata: {
|
|
1732
1732
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
1733
1733
|
updatedHash: "354fab95c7"
|
|
@@ -1777,7 +1777,7 @@ export default function Dashboard() {
|
|
|
1777
1777
|
`,
|
|
1778
1778
|
type: "text"
|
|
1779
1779
|
},
|
|
1780
|
-
"auth/web/react/next/src/app/login/page.tsx": {
|
|
1780
|
+
"auth/web/react/next/src-ts/app/login/page.tsx": {
|
|
1781
1781
|
metadata: {
|
|
1782
1782
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
1783
1783
|
updatedHash: "bdd103cc10"
|
|
@@ -486,7 +486,7 @@ export {};
|
|
|
486
486
|
`,
|
|
487
487
|
type: "text"
|
|
488
488
|
},
|
|
489
|
-
"examples/ai/server/next/src/app/ai/route.ts": {
|
|
489
|
+
"examples/ai/server/next/src-ts/app/ai/route.ts": {
|
|
490
490
|
metadata: {
|
|
491
491
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
492
492
|
updatedHash: "eee0d6a73d"
|
|
@@ -569,7 +569,7 @@ function getMessageText(message: any) {
|
|
|
569
569
|
`,
|
|
570
570
|
type: "text"
|
|
571
571
|
},
|
|
572
|
-
"examples/ai/web/react/next/src/app/ai/page.tsx": {
|
|
572
|
+
"examples/ai/web/react/next/src-ts/app/ai/page.tsx": {
|
|
573
573
|
metadata: {
|
|
574
574
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
575
575
|
updatedHash: "0c366c76eb"
|
|
@@ -2058,7 +2058,7 @@ function handleDeleteTodo(id: number) {
|
|
|
2058
2058
|
`,
|
|
2059
2059
|
type: "text"
|
|
2060
2060
|
},
|
|
2061
|
-
"examples/todo/web/react/next/src/app/todos/page.tsx.hbs": {
|
|
2061
|
+
"examples/todo/web/react/next/src-ts/app/todos/page.tsx.hbs": {
|
|
2062
2062
|
metadata: {
|
|
2063
2063
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
2064
2064
|
updatedHash: "dbf393c2f2"
|
|
@@ -2678,7 +2678,7 @@ export default config;
|
|
|
2678
2678
|
`,
|
|
2679
2679
|
type: "text"
|
|
2680
2680
|
},
|
|
2681
|
-
"frontend/react/next/src/app/favicon.ico": {
|
|
2681
|
+
"frontend/react/next/src-ts/app/favicon.ico": {
|
|
2682
2682
|
metadata: {
|
|
2683
2683
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
2684
2684
|
updatedHash: "9ecfcc8f0e"
|
|
@@ -2687,7 +2687,7 @@ export default config;
|
|
|
2687
2687
|
type: "binary",
|
|
2688
2688
|
binaryHash: "9ecfcc8f0e"
|
|
2689
2689
|
},
|
|
2690
|
-
"frontend/react/next/src/app/layout.tsx.hbs": {
|
|
2690
|
+
"frontend/react/next/src-ts/app/layout.tsx.hbs": {
|
|
2691
2691
|
metadata: {
|
|
2692
2692
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
2693
2693
|
updatedHash: "2b199051ab"
|
|
@@ -2732,7 +2732,7 @@ export default function RootLayout({
|
|
|
2732
2732
|
`,
|
|
2733
2733
|
type: "text"
|
|
2734
2734
|
},
|
|
2735
|
-
"frontend/react/next/src/app/page.tsx.hbs": {
|
|
2735
|
+
"frontend/react/next/src-ts/app/page.tsx.hbs": {
|
|
2736
2736
|
metadata: {
|
|
2737
2737
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
2738
2738
|
updatedHash: "78e7e7eea2"
|
|
@@ -5742,7 +5742,7 @@ dist-ssr
|
|
|
5742
5742
|
},
|
|
5743
5743
|
type: "json"
|
|
5744
5744
|
},
|
|
5745
|
-
"frontend/svelte/src/app.css": {
|
|
5745
|
+
"frontend/svelte/src-ts/app.css": {
|
|
5746
5746
|
metadata: {
|
|
5747
5747
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
5748
5748
|
updatedHash: "2b911b4424"
|
|
@@ -5754,7 +5754,7 @@ body {
|
|
|
5754
5754
|
`,
|
|
5755
5755
|
type: "text"
|
|
5756
5756
|
},
|
|
5757
|
-
"frontend/svelte/src/app.d.ts": {
|
|
5757
|
+
"frontend/svelte/src-ts/app.d.ts": {
|
|
5758
5758
|
metadata: {
|
|
5759
5759
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
5760
5760
|
updatedHash: "2f59b5d092"
|
|
@@ -5774,7 +5774,7 @@ export {};
|
|
|
5774
5774
|
`,
|
|
5775
5775
|
type: "text"
|
|
5776
5776
|
},
|
|
5777
|
-
"frontend/svelte/src/app.html": {
|
|
5777
|
+
"frontend/svelte/src-ts/app.html": {
|
|
5778
5778
|
metadata: {
|
|
5779
5779
|
updatedAt: "2025-06-17T06:06:35.000Z",
|
|
5780
5780
|
updatedHash: "f980132c60"
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
export declare const DatabaseSchema: z.ZodEnum<{
|
|
3
3
|
none: "none";
|
|
4
|
-
sqlite: "sqlite";
|
|
5
4
|
mysql: "mysql";
|
|
5
|
+
sqlite: "sqlite";
|
|
6
6
|
mongodb: "mongodb";
|
|
7
7
|
postgres: "postgres";
|
|
8
8
|
}>;
|
|
@@ -17,11 +17,11 @@ export type ORM = z.infer<typeof ORMSchema>;
|
|
|
17
17
|
export declare const BackendSchema: z.ZodEnum<{
|
|
18
18
|
none: "none";
|
|
19
19
|
hono: "hono";
|
|
20
|
+
convex: "convex";
|
|
20
21
|
next: "next";
|
|
22
|
+
elysia: "elysia";
|
|
21
23
|
express: "express";
|
|
22
24
|
fastify: "fastify";
|
|
23
|
-
elysia: "elysia";
|
|
24
|
-
convex: "convex";
|
|
25
25
|
}>;
|
|
26
26
|
export type Backend = z.infer<typeof BackendSchema>;
|
|
27
27
|
export declare const RuntimeSchema: z.ZodEnum<{
|
|
@@ -45,13 +45,13 @@ export declare const FrontendSchema: z.ZodEnum<{
|
|
|
45
45
|
}>;
|
|
46
46
|
export type Frontend = z.infer<typeof FrontendSchema>;
|
|
47
47
|
export declare const AddonsSchema: z.ZodEnum<{
|
|
48
|
-
none: "none";
|
|
49
48
|
biome: "biome";
|
|
50
|
-
|
|
49
|
+
none: "none";
|
|
51
50
|
turborepo: "turborepo";
|
|
52
51
|
starlight: "starlight";
|
|
53
|
-
pwa: "pwa";
|
|
54
52
|
husky: "husky";
|
|
53
|
+
pwa: "pwa";
|
|
54
|
+
tauri: "tauri";
|
|
55
55
|
}>;
|
|
56
56
|
export type Addons = z.infer<typeof AddonsSchema>;
|
|
57
57
|
export declare const ExamplesSchema: z.ZodEnum<{
|
|
@@ -61,9 +61,9 @@ export declare const ExamplesSchema: z.ZodEnum<{
|
|
|
61
61
|
}>;
|
|
62
62
|
export type Examples = z.infer<typeof ExamplesSchema>;
|
|
63
63
|
export declare const PackageManagerSchema: z.ZodEnum<{
|
|
64
|
+
bun: "bun";
|
|
64
65
|
npm: "npm";
|
|
65
66
|
pnpm: "pnpm";
|
|
66
|
-
bun: "bun";
|
|
67
67
|
}>;
|
|
68
68
|
export type PackageManager = z.infer<typeof PackageManagerSchema>;
|
|
69
69
|
export declare const DatabaseSetupSchema: z.ZodEnum<{
|
package/bin/app/pub/impl.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ import type { DlerConfig } from "../types/mod.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Main entry point for the dler build and publish process.
|
|
4
4
|
* Handles building and publishing for both main project and libraries.
|
|
5
|
-
* @see `src/app/build/impl.ts` for build main function implementation.
|
|
5
|
+
* @see `src-ts/app/build/impl.ts` for build main function implementation.
|
|
6
6
|
*/
|
|
7
7
|
export declare function dlerPub(isDev: boolean, config?: DlerConfig): Promise<void>;
|
package/bin/app/rempts/cmd.js
CHANGED
|
@@ -26,11 +26,11 @@ export default defineCommand({
|
|
|
26
26
|
outFile: {
|
|
27
27
|
type: "string",
|
|
28
28
|
description: "Output file path for exports (relative to workspace root)",
|
|
29
|
-
default: "src/app/cmds.ts"
|
|
29
|
+
default: "src-ts/app/cmds.ts"
|
|
30
30
|
},
|
|
31
31
|
cmdDirs: {
|
|
32
32
|
type: "array",
|
|
33
|
-
description: "Command directories to scan (relative to src/app)"
|
|
33
|
+
description: "Command directories to scan (relative to src-ts/app)"
|
|
34
34
|
}
|
|
35
35
|
}),
|
|
36
36
|
async run({ args }) {
|
|
@@ -68,7 +68,7 @@ export default defineCommand({
|
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
70
|
if (!cmdsRoot) {
|
|
71
|
-
const defaultCmdsRoot = path.resolve("src/app");
|
|
71
|
+
const defaultCmdsRoot = path.resolve("src-ts/app");
|
|
72
72
|
if (await fs.pathExists(defaultCmdsRoot)) {
|
|
73
73
|
cmdsRoot = defaultCmdsRoot;
|
|
74
74
|
} else {
|
|
@@ -101,8 +101,8 @@ export default defineCommand({
|
|
|
101
101
|
didInit = true;
|
|
102
102
|
}
|
|
103
103
|
if (!args.init) {
|
|
104
|
-
const root2 = path.resolve("src/app");
|
|
105
|
-
const outPath2 = path.resolve(args.outFile ?? "src/app/cmds.ts");
|
|
104
|
+
const root2 = path.resolve("src-ts/app");
|
|
105
|
+
const outPath2 = path.resolve(args.outFile ?? "src-ts/app/cmds.ts");
|
|
106
106
|
const cmdDirs2 = (args.cmdDirs ?? []).length > 0 ? args.cmdDirs ?? [] : await findCommandDirs(root2);
|
|
107
107
|
if (cmdDirs2.length === 0) {
|
|
108
108
|
relinka(
|
|
@@ -122,8 +122,8 @@ export default defineCommand({
|
|
|
122
122
|
relinka("verbose", `Found ${cmdDirs2.length} command(s): ${cmdDirs2.join(", ")}`);
|
|
123
123
|
return;
|
|
124
124
|
}
|
|
125
|
-
const root = path.resolve("src/app");
|
|
126
|
-
const outPath = path.resolve(args.outFile ?? "src/app/cmds.ts");
|
|
125
|
+
const root = path.resolve("src-ts/app");
|
|
126
|
+
const outPath = path.resolve(args.outFile ?? "src-ts/app/cmds.ts");
|
|
127
127
|
if (await fs.pathExists(outPath) && !args.overwrite) {
|
|
128
128
|
relinka("warn", `\u274C File "${outPath}" already exists. Use --overwrite to overwrite.`);
|
|
129
129
|
return;
|
|
@@ -164,7 +164,7 @@ await runCmd(cmd, [
|
|
|
164
164
|
});
|
|
165
165
|
async function handleDlerConfig() {
|
|
166
166
|
const dlerConfigPath = path.resolve("reliverse.ts");
|
|
167
|
-
let cmdsRoot = "src/app";
|
|
167
|
+
let cmdsRoot = "src-ts/app";
|
|
168
168
|
let cliFilePath = "";
|
|
169
169
|
try {
|
|
170
170
|
const jiti = createJiti(import.meta.url);
|
|
@@ -174,7 +174,7 @@ async function handleDlerConfig() {
|
|
|
174
174
|
const coreIsCLI = dlerConfig?.coreIsCLI;
|
|
175
175
|
if (!coreIsCLI?.enabled || !coreIsCLI?.scripts) {
|
|
176
176
|
cliFilePath = await ensureCliFile("src/cli.ts");
|
|
177
|
-
cmdsRoot = "src/app";
|
|
177
|
+
cmdsRoot = "src-ts/app";
|
|
178
178
|
} else {
|
|
179
179
|
const firstScript = Object.values(coreIsCLI.scripts)[0];
|
|
180
180
|
const scriptPath = path.resolve(firstScript);
|
|
@@ -189,16 +189,16 @@ async function handleDlerConfig() {
|
|
|
189
189
|
}
|
|
190
190
|
} else {
|
|
191
191
|
relinka("warn", `${scriptPath} doesn't use @reliverse/rempts`);
|
|
192
|
-
cmdsRoot = "src/app";
|
|
192
|
+
cmdsRoot = "src-ts/app";
|
|
193
193
|
}
|
|
194
194
|
} else {
|
|
195
195
|
cliFilePath = await ensureCliFile(scriptPath);
|
|
196
|
-
cmdsRoot = "src/app";
|
|
196
|
+
cmdsRoot = "src-ts/app";
|
|
197
197
|
}
|
|
198
198
|
}
|
|
199
199
|
} catch {
|
|
200
200
|
cliFilePath = await ensureCliFile("src/cli.ts");
|
|
201
|
-
cmdsRoot = "src/app";
|
|
201
|
+
cmdsRoot = "src-ts/app";
|
|
202
202
|
}
|
|
203
203
|
return { cmdsRoot: path.resolve(cmdsRoot), cliFile: cliFilePath };
|
|
204
204
|
}
|
|
@@ -235,7 +235,7 @@ async function findCommandDirs(root) {
|
|
|
235
235
|
async function generateCommandArgsMap(cmdDirs) {
|
|
236
236
|
let interfaceContent = "// Argument types for each command based on their defineArgs\ninterface CommandArgsMap {\n";
|
|
237
237
|
for (const dir of cmdDirs) {
|
|
238
|
-
const cmdPath = path.join("src/app", dir, "cmd.ts");
|
|
238
|
+
const cmdPath = path.join("src-ts/app", dir, "cmd.ts");
|
|
239
239
|
try {
|
|
240
240
|
if (await fs.pathExists(cmdPath)) {
|
|
241
241
|
const content = await fs.readFile(cmdPath, "utf-8");
|
|
@@ -335,7 +335,7 @@ async function generateExports(cmdDirs) {
|
|
|
335
335
|
"",
|
|
336
336
|
'import type { Command } from "@reliverse/rempts";',
|
|
337
337
|
"",
|
|
338
|
-
'import {
|
|
338
|
+
'import { callCmdImpl, getTypedCmdImpl, loadCommand } from "@reliverse/rempts";'
|
|
339
339
|
];
|
|
340
340
|
lines.push("", "// ========== TYPED COMMAND SYSTEM ==========", "");
|
|
341
341
|
const commandArgsMap = await generateCommandArgsMap(cmdDirs);
|
|
@@ -414,7 +414,7 @@ const cliTemplate = `import { defineCommand, runMain } from "@reliverse/rempts";
|
|
|
414
414
|
await runMain(
|
|
415
415
|
defineCommand({
|
|
416
416
|
// empty object activates file-based
|
|
417
|
-
// commands in the src/app directory
|
|
417
|
+
// commands in the src-ts/app directory
|
|
418
418
|
}),
|
|
419
419
|
);
|
|
420
420
|
`;
|
|
@@ -3,8 +3,8 @@ import fs, { ensuredir } from "@reliverse/relifso";
|
|
|
3
3
|
import { relinka } from "@reliverse/relinka";
|
|
4
4
|
async function isI18nAlreadySetup(projectPath) {
|
|
5
5
|
const checkPaths = [
|
|
6
|
-
"src/app/[locale]",
|
|
7
|
-
"src/app/[lang]",
|
|
6
|
+
"src-ts/app/[locale]",
|
|
7
|
+
"src-ts/app/[lang]",
|
|
8
8
|
"src/i18n",
|
|
9
9
|
"src/locales",
|
|
10
10
|
"src/translations",
|
|
@@ -25,7 +25,7 @@ export async function setupI18nFiles(projectPath) {
|
|
|
25
25
|
return;
|
|
26
26
|
}
|
|
27
27
|
await ensuredir(projectPath);
|
|
28
|
-
const layoutPath = path.join(projectPath, "src/app/layout.tsx");
|
|
28
|
+
const layoutPath = path.join(projectPath, "src-ts/app/layout.tsx");
|
|
29
29
|
if (!await fs.pathExists(layoutPath)) {
|
|
30
30
|
await ensuredir(path.dirname(layoutPath));
|
|
31
31
|
const layoutContent = `
|
|
@@ -58,7 +58,7 @@ export function generateStaticParams() {
|
|
|
58
58
|
await fs.writeFile(layoutPath, layoutContent);
|
|
59
59
|
relinka("success", "Generated i18n layout file");
|
|
60
60
|
}
|
|
61
|
-
const pagePath = path.join(projectPath, "src/app/page.tsx");
|
|
61
|
+
const pagePath = path.join(projectPath, "src-ts/app/page.tsx");
|
|
62
62
|
if (!await fs.pathExists(pagePath)) {
|
|
63
63
|
const pageContent = `
|
|
64
64
|
import { useTranslation } from "../i18n";
|
|
@@ -20,8 +20,8 @@ export declare const memorySchema: import("@sinclair/typebox").TObject<{
|
|
|
20
20
|
vercelKey: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
21
21
|
openaiKey: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
22
22
|
name: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
23
|
-
githubUsername: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
23
|
email: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
24
|
+
githubUsername: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
25
25
|
vercelTeamId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
26
26
|
vercelTeamSlug: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
27
27
|
}>;
|
package/bin/app/web/README.md
CHANGED
package/bin/dler.js
CHANGED
|
@@ -12,7 +12,7 @@ let isDev = process.env.DLER_DEV_MODE === "true";
|
|
|
12
12
|
const main = defineCommand({
|
|
13
13
|
meta: {
|
|
14
14
|
name: "dler",
|
|
15
|
-
version: "1.7.
|
|
15
|
+
version: "1.7.96",
|
|
16
16
|
description: `Displays dler's command menu.
|
|
17
17
|
To see ALL available commands and arguments, run: 'dler --help' (or 'dler <command> --help')
|
|
18
18
|
Available menu commands: ${MENU_CMDS.join(", ")}`
|