@reliverse/dler 1.7.123 → 1.7.125
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/impl/auth/impl/init.d.ts +2 -2
- package/bin/impl/build/impl.d.ts +1 -1
- package/bin/impl/build/library-flow.d.ts +1 -1
- package/bin/impl/build/library-flow.js +5 -3
- package/bin/impl/build/regular-flow.js +9 -5
- package/bin/impl/config/constants.d.ts +1 -1
- package/bin/impl/config/constants.js +1 -1
- package/bin/impl/config/def-utils.js +3 -3
- package/bin/impl/config/detect.js +1 -1
- package/bin/impl/config/prepare.js +4 -7
- package/bin/impl/init/mm-deprecated/drizzle/manageDrizzleSchema.js +1 -1
- package/bin/impl/init/mm-deprecated/feature-add.js +2 -2
- package/bin/impl/init/mm-deprecated/feature-rm.js +5 -5
- package/bin/impl/init/use-template/cp-impl.js +1 -1
- package/bin/impl/init/use-template/cp-modules/git-deploy-prompts/git.js +1 -3
- package/bin/impl/migrate/codemods/anything-bun.js +1 -1
- package/bin/impl/providers/better-t-stack/packed/addons.js +1 -1
- package/bin/impl/providers/better-t-stack/packed/api.js +2 -2
- package/bin/impl/providers/better-t-stack/packed/auth.js +3 -3
- package/bin/impl/providers/better-t-stack/packed/backend.js +1 -1
- package/bin/impl/providers/better-t-stack/packed/examples.js +3 -3
- package/bin/impl/providers/better-t-stack/packed/frontend.js +6 -6
- package/bin/impl/providers/better-t-stack/types.d.ts +6 -6
- package/bin/impl/providers/reliverse-stack/rs-impl.d.ts +2 -2
- package/bin/impl/pub/impl.d.ts +1 -1
- package/bin/impl/pub/pub-library.d.ts +1 -1
- package/bin/impl/pub/pub-library.js +32 -9
- package/bin/impl/pub/pub-regular.d.ts +2 -2
- package/bin/impl/pub/pub-regular.js +9 -4
- package/bin/impl/rempts/cmd.js +7 -7
- package/bin/impl/utils/agg/agg-3.js +1 -1
- package/bin/impl/utils/downloading/downloadI18nFiles.js +4 -4
- package/bin/impl/utils/prompts/askUsernameFrontend.js +1 -2
- package/bin/impl/utils/spinner.d.ts +4 -4
- package/package.json +2 -2
|
@@ -146,8 +146,8 @@ export declare const optionsSchema: z.ZodObject<{
|
|
|
146
146
|
cwd: z.ZodString;
|
|
147
147
|
config: z.ZodOptional<z.ZodString>;
|
|
148
148
|
database: z.ZodOptional<z.ZodEnum<{
|
|
149
|
-
sqlite: "sqlite";
|
|
150
149
|
mysql: "mysql";
|
|
150
|
+
sqlite: "sqlite";
|
|
151
151
|
mongodb: "mongodb";
|
|
152
152
|
postgres: "postgres";
|
|
153
153
|
mssql: "mssql";
|
|
@@ -165,7 +165,7 @@ export declare const optionsSchema: z.ZodObject<{
|
|
|
165
165
|
}, z.core.$strip>;
|
|
166
166
|
export declare const outroText = "\uD83E\uDD73 All Done, Happy Hacking!";
|
|
167
167
|
export declare function getLatestNpmVersion(packageName: string): Promise<string>;
|
|
168
|
-
export declare function getPackageManager(): Promise<"
|
|
168
|
+
export declare function getPackageManager(): Promise<"bun" | "npm" | "yarn" | "pnpm">;
|
|
169
169
|
export declare function getEnvFiles(cwd: string): Promise<string[]>;
|
|
170
170
|
export declare function updateEnvs({ envs, files, isCommented, }: {
|
|
171
171
|
/**
|
package/bin/impl/build/impl.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { PerfTimer } from "../types/mod.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* Main entry point for the rse build process.
|
|
5
5
|
* Handles building for both main project and libraries.
|
|
6
|
-
* @see `src-ts/
|
|
6
|
+
* @see `src-ts/impl/pub/impl.ts` for pub main function implementation.
|
|
7
7
|
*/
|
|
8
8
|
export declare function dlerBuild(timer: PerfTimer, isDev: boolean, config?: ReliverseConfig, debugOnlyCopyNonBuildFiles?: boolean, debugDontCopyNonBuildFiles?: boolean, disableOwnSpinner?: boolean): Promise<{
|
|
9
9
|
timer: PerfTimer;
|
|
@@ -23,4 +23,4 @@ export declare function libraries_build(isDev: boolean, timer: PerfTimer, libsLi
|
|
|
23
23
|
/**
|
|
24
24
|
* Publishes all libs defined in config.libsList.
|
|
25
25
|
*/
|
|
26
|
-
export declare function libraries_publish(isDev: boolean, timer: PerfTimer, libsList: Record<string, LibConfig>, distJsrDryRun: boolean, distJsrFailOnWarn: boolean, libsDirDist: string, commonPubPause: boolean, commonPubRegistry: "jsr" | "npm" | "npm-jsr", distJsrAllowDirty: boolean, distJsrSlowTypes: boolean): Promise<void>;
|
|
26
|
+
export declare function libraries_publish(isDev: boolean, timer: PerfTimer, libsList: Record<string, LibConfig>, distJsrDryRun: boolean, distJsrFailOnWarn: boolean, libsDirDist: string, commonPubPause: boolean, commonPubRegistry: "jsr" | "npm" | "npm-jsr", distJsrAllowDirty: boolean, distJsrSlowTypes: boolean, shouldShowSpinner?: boolean): Promise<void>;
|
|
@@ -52,7 +52,8 @@ export async function library_pubFlow(timer, isDev, config) {
|
|
|
52
52
|
config.commonPubPause,
|
|
53
53
|
config.commonPubRegistry,
|
|
54
54
|
config.distJsrAllowDirty,
|
|
55
|
-
config.distJsrSlowTypes
|
|
55
|
+
config.distJsrSlowTypes,
|
|
56
|
+
config.displayBuildPubLogs === false
|
|
56
57
|
);
|
|
57
58
|
}
|
|
58
59
|
function extractFolderName(libName, libConfig) {
|
|
@@ -173,7 +174,7 @@ export async function libraries_build(isDev, timer, libsList, libsDirDist, libsD
|
|
|
173
174
|
throw error;
|
|
174
175
|
}
|
|
175
176
|
}
|
|
176
|
-
export async function libraries_publish(isDev, timer, libsList, distJsrDryRun, distJsrFailOnWarn, libsDirDist, commonPubPause, commonPubRegistry, distJsrAllowDirty, distJsrSlowTypes) {
|
|
177
|
+
export async function libraries_publish(isDev, timer, libsList, distJsrDryRun, distJsrFailOnWarn, libsDirDist, commonPubPause, commonPubRegistry, distJsrAllowDirty, distJsrSlowTypes, shouldShowSpinner = false) {
|
|
177
178
|
relinka("verbose", "Starting libraries_publish");
|
|
178
179
|
if (!libsList || Object.keys(libsList).length === 0) {
|
|
179
180
|
relinka("verbose", "No lib configs found in config, skipping libs publish.");
|
|
@@ -214,7 +215,8 @@ export async function libraries_publish(isDev, timer, libsList, distJsrDryRun, d
|
|
|
214
215
|
distJsrAllowDirty,
|
|
215
216
|
distJsrSlowTypes,
|
|
216
217
|
isDev,
|
|
217
|
-
timer
|
|
218
|
+
timer,
|
|
219
|
+
shouldShowSpinner
|
|
218
220
|
);
|
|
219
221
|
if (publishSpinner) {
|
|
220
222
|
publishSpinner.succeed(`${libName} published to ${effectivePubRegistry} successfully`);
|
|
@@ -151,6 +151,7 @@ export async function regular_pubFlow(timer, isDev, config) {
|
|
|
151
151
|
relinka("verbose", "Skipping main project publish as libsActMode is set to 'libs-only'");
|
|
152
152
|
return;
|
|
153
153
|
}
|
|
154
|
+
const shouldShowSpinner = config.displayBuildPubLogs === false;
|
|
154
155
|
switch (config.commonPubRegistry) {
|
|
155
156
|
case "jsr":
|
|
156
157
|
relinka("verbose", "Publishing main project to JSR...");
|
|
@@ -162,7 +163,8 @@ export async function regular_pubFlow(timer, isDev, config) {
|
|
|
162
163
|
config.distJsrDirName,
|
|
163
164
|
config.distJsrAllowDirty,
|
|
164
165
|
config.distJsrSlowTypes,
|
|
165
|
-
timer
|
|
166
|
+
timer,
|
|
167
|
+
shouldShowSpinner
|
|
166
168
|
);
|
|
167
169
|
break;
|
|
168
170
|
case "npm":
|
|
@@ -172,12 +174,12 @@ export async function regular_pubFlow(timer, isDev, config) {
|
|
|
172
174
|
isDev,
|
|
173
175
|
config.commonPubPause,
|
|
174
176
|
config.distNpmDirName,
|
|
175
|
-
timer
|
|
177
|
+
timer,
|
|
178
|
+
shouldShowSpinner
|
|
176
179
|
);
|
|
177
180
|
break;
|
|
178
181
|
case "npm-jsr": {
|
|
179
182
|
relinka("verbose", "Publishing main project to both NPM and JSR...");
|
|
180
|
-
const shouldShowSpinner = config.displayBuildPubLogs === false;
|
|
181
183
|
let pubSpinnerGroup = null;
|
|
182
184
|
if (shouldShowSpinner) {
|
|
183
185
|
pubSpinnerGroup = createSpinnerGroup({
|
|
@@ -200,7 +202,8 @@ export async function regular_pubFlow(timer, isDev, config) {
|
|
|
200
202
|
config.distJsrDirName,
|
|
201
203
|
config.distJsrAllowDirty,
|
|
202
204
|
config.distJsrSlowTypes,
|
|
203
|
-
timer
|
|
205
|
+
timer,
|
|
206
|
+
shouldShowSpinner
|
|
204
207
|
);
|
|
205
208
|
if (pubSpinnerGroup?.spinners[1]) {
|
|
206
209
|
pubSpinnerGroup.spinners[1].succeed("JSR publish completed");
|
|
@@ -219,7 +222,8 @@ export async function regular_pubFlow(timer, isDev, config) {
|
|
|
219
222
|
isDev,
|
|
220
223
|
config.commonPubPause,
|
|
221
224
|
config.distNpmDirName,
|
|
222
|
-
timer
|
|
225
|
+
timer,
|
|
226
|
+
shouldShowSpinner
|
|
223
227
|
);
|
|
224
228
|
if (pubSpinnerGroup?.spinners[0]) {
|
|
225
229
|
pubSpinnerGroup.spinners[0].succeed("NPM publish completed");
|
|
@@ -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.125";
|
|
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.125";
|
|
5
5
|
export const cliVersion = version;
|
|
6
6
|
export const cliName = "@reliverse/rse";
|
|
7
7
|
export const rseName = "@reliverse/rse";
|
|
@@ -83,10 +83,10 @@ export async function generateDefaultRulesForProject(projectPath, isDev) {
|
|
|
83
83
|
const hasPrismaFile = await fs.pathExists(path.join(projectPath, "prisma/schema.prisma"));
|
|
84
84
|
const hasDrizzleFile = await fs.pathExists(path.join(projectPath, "drizzle.config.ts"));
|
|
85
85
|
const hasNextAuthDir = await fs.pathExists(
|
|
86
|
-
path.join(projectPath, "src-ts/
|
|
86
|
+
path.join(projectPath, "src-ts/impl/api/auth/[...nextauth]")
|
|
87
87
|
);
|
|
88
88
|
const hasBetterAuthFile = await fs.pathExists(
|
|
89
|
-
path.join(projectPath, "src-ts/
|
|
89
|
+
path.join(projectPath, "src-ts/impl/api/auth/[...all]/route.ts")
|
|
90
90
|
);
|
|
91
91
|
const hasShadcnUi = await fs.pathExists(path.join(projectPath, "components/ui"));
|
|
92
92
|
const hasClerk = "@clerk/nextjs" in deps;
|
|
@@ -116,7 +116,7 @@ export async function generateDefaultRulesForProject(projectPath, isDev) {
|
|
|
116
116
|
const hasHono = "hono" in deps;
|
|
117
117
|
const hasTrpc = "@trpc/server" in deps;
|
|
118
118
|
const hasGraphql = "graphql" in deps || "apollo-server" in deps;
|
|
119
|
-
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/
|
|
119
|
+
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/impl/api"));
|
|
120
120
|
const hasPg = "pg" in deps || "@neondatabase/serverless" in deps;
|
|
121
121
|
const hasMysql = "mysql" in deps || "mysql2" in deps;
|
|
122
122
|
const hasSqlite = "sqlite" in deps || "sqlite3" in deps || "better-sqlite3" in deps;
|
|
@@ -190,7 +190,7 @@ export async function detectFeatures(projectPath, packageJson) {
|
|
|
190
190
|
const hasHono = "hono" in deps;
|
|
191
191
|
const hasTrpc = "@trpc/server" in deps;
|
|
192
192
|
const hasGraphql = "graphql" in deps || "apollo-server" in deps;
|
|
193
|
-
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/
|
|
193
|
+
const hasRest = await fs.pathExists(path.join(projectPath, "src/api")) || await fs.pathExists(path.join(projectPath, "src-ts/impl/api"));
|
|
194
194
|
const hasEslint = "eslint" in deps;
|
|
195
195
|
const hasBiome = "@biomejs/biome" in deps;
|
|
196
196
|
const hasStripe = "stripe" in deps || "@stripe/stripe-js" in deps;
|
|
@@ -27,12 +27,9 @@ export async function ensureReliverseConfig(isDev, configKind = DEFAULT_CONFIG_K
|
|
|
27
27
|
`${configKind === "ts" ? "TypeScript" : "JSONC"} config was created at ${configPath}`
|
|
28
28
|
);
|
|
29
29
|
relinka("verbose", "Edit this file to customize build and publish settings");
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
} else {
|
|
34
|
-
relinka("verbose", "When you're ready, run `bun pub` to build and publish");
|
|
35
|
-
}
|
|
30
|
+
relinka("log", "If you plan to publish with Rse, please note:");
|
|
31
|
+
relinka("log", "commonPubPause is set to true in the config by default");
|
|
32
|
+
relinka("log", "Set it to false, then run `rse publish` for NPM/JSR publishing");
|
|
36
33
|
} catch (error) {
|
|
37
34
|
relinka(
|
|
38
35
|
"error",
|
|
@@ -807,7 +804,7 @@ function getBumpFilter(isDev) {
|
|
|
807
804
|
return isDev ? `[
|
|
808
805
|
"package.json",
|
|
809
806
|
"reliverse.ts",
|
|
810
|
-
"src-ts/
|
|
807
|
+
"src-ts/impl/config/info.ts",
|
|
811
808
|
]` : `["package.json", "reliverse.ts"]`;
|
|
812
809
|
}
|
|
813
810
|
function getPublishArtifacts(isDev) {
|
|
@@ -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-ts/
|
|
14
|
+
const singleSchemaDir = isDev ? path.join(cwd, "src-ts/impl/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-ts/
|
|
350
|
+
path: "src-ts/impl/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-ts/
|
|
433
|
+
path: "src-ts/impl/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-ts/
|
|
33
|
-
"src-ts/
|
|
32
|
+
"src-ts/impl/api/auth/[...nextauth]/route.ts",
|
|
33
|
+
"src-ts/impl/api/auth/[...all]/route.ts",
|
|
34
34
|
"middleware.ts"
|
|
35
35
|
],
|
|
36
|
-
directories: ["src-ts/
|
|
36
|
+
directories: ["src-ts/impl/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-ts/
|
|
58
|
-
directories: ["src-ts/
|
|
57
|
+
files: ["src/lib/stripe.ts", "src-ts/impl/api/stripe/webhook/route.ts"],
|
|
58
|
+
directories: ["src-ts/impl/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-ts/
|
|
73
|
+
const i18nFolderExists = await fs.pathExists(path.join(projectPath, "src-ts/impl/[locale]")) || await fs.pathExists(path.join(projectPath, "src-ts/impl/[lang]"));
|
|
74
74
|
if (i18nFolderExists) {
|
|
75
75
|
relinka("verbose", "i18n is already enabled in the template. No changes needed.");
|
|
76
76
|
return true;
|
|
@@ -2,7 +2,7 @@ import path from "@reliverse/pathkit";
|
|
|
2
2
|
import { re } from "@reliverse/relico";
|
|
3
3
|
import fs from "@reliverse/relifso";
|
|
4
4
|
import { relinka } from "@reliverse/relinka";
|
|
5
|
-
import {
|
|
5
|
+
import { inputPrompt, selectPrompt } from "@reliverse/rempts";
|
|
6
6
|
import { simpleGit } from "simple-git";
|
|
7
7
|
import { cliName } from "../../../../config/constants.js";
|
|
8
8
|
import { getEffectiveDir } from "../../../../utils/getEffectiveDir.js";
|
|
@@ -39,7 +39,6 @@ export async function initializeGitRepo(git, alreadyGit, config, isTemplateDownl
|
|
|
39
39
|
}
|
|
40
40
|
if (!alreadyGit) {
|
|
41
41
|
await git.init();
|
|
42
|
-
deleteLastLine();
|
|
43
42
|
relinka("success", "Git repository initialized");
|
|
44
43
|
const branchName = config.repoBranch && config.repoBranch !== "main" ? config.repoBranch : "main";
|
|
45
44
|
try {
|
|
@@ -94,7 +93,6 @@ export async function initGitDir(params) {
|
|
|
94
93
|
params.projectPath
|
|
95
94
|
);
|
|
96
95
|
if (alreadyGit && params.allowReInit) {
|
|
97
|
-
deleteLastLine();
|
|
98
96
|
relinka("verbose", "Reinitializing existing git repository...");
|
|
99
97
|
if (!await removeGitDir(effectiveDir)) return false;
|
|
100
98
|
const git2 = simpleGit({ baseDir: effectiveDir });
|
|
@@ -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
|
|
400
|
+
WORKDIR /usr/src/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-ts/
|
|
149
|
+
"addons/pwa/apps/web/next/src-ts/impl/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-ts/
|
|
191
|
+
"api/orpc/server/next/src-ts/impl/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-ts/
|
|
559
|
+
"api/trpc/server/next/src-ts/impl/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-ts/
|
|
1406
|
+
"auth/server/next/src-ts/impl/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-ts/
|
|
1730
|
+
"auth/web/react/next/src-ts/impl/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-ts/
|
|
1780
|
+
"auth/web/react/next/src-ts/impl/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-ts/
|
|
489
|
+
"examples/ai/server/next/src-ts/impl/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-ts/
|
|
572
|
+
"examples/ai/web/react/next/src-ts/impl/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-ts/
|
|
2061
|
+
"examples/todo/web/react/next/src-ts/impl/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
|
|
2681
|
+
"frontend/react/next/src/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
|
|
2690
|
+
"frontend/react/next/src/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
|
|
2735
|
+
"frontend/react/next/src/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
|
|
5745
|
+
"frontend/svelte/src/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
|
|
5757
|
+
"frontend/svelte/src/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
|
|
5777
|
+
"frontend/svelte/src/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
|
-
sqlite: "sqlite";
|
|
4
3
|
none: "none";
|
|
5
4
|
mysql: "mysql";
|
|
5
|
+
sqlite: "sqlite";
|
|
6
6
|
mongodb: "mongodb";
|
|
7
7
|
postgres: "postgres";
|
|
8
8
|
}>;
|
|
@@ -25,8 +25,8 @@ export declare const BackendSchema: z.ZodEnum<{
|
|
|
25
25
|
}>;
|
|
26
26
|
export type Backend = z.infer<typeof BackendSchema>;
|
|
27
27
|
export declare const RuntimeSchema: z.ZodEnum<{
|
|
28
|
-
bun: "bun";
|
|
29
28
|
none: "none";
|
|
29
|
+
bun: "bun";
|
|
30
30
|
node: "node";
|
|
31
31
|
workers: "workers";
|
|
32
32
|
}>;
|
|
@@ -45,25 +45,25 @@ 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
|
-
biome: "biome";
|
|
49
48
|
none: "none";
|
|
49
|
+
biome: "biome";
|
|
50
50
|
tauri: "tauri";
|
|
51
51
|
starlight: "starlight";
|
|
52
52
|
turborepo: "turborepo";
|
|
53
|
-
pwa: "pwa";
|
|
54
53
|
husky: "husky";
|
|
54
|
+
pwa: "pwa";
|
|
55
55
|
}>;
|
|
56
56
|
export type Addons = z.infer<typeof AddonsSchema>;
|
|
57
57
|
export declare const ExamplesSchema: z.ZodEnum<{
|
|
58
|
-
ai: "ai";
|
|
59
58
|
none: "none";
|
|
59
|
+
ai: "ai";
|
|
60
60
|
todo: "todo";
|
|
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<{
|
|
@@ -14,7 +14,7 @@ export type BrowserRepoOption = "reliverse/template-browser-extension" | "unknow
|
|
|
14
14
|
export declare function configureBrowserExtension(): Promise<{
|
|
15
15
|
displayName: string;
|
|
16
16
|
description: string;
|
|
17
|
-
features: ("
|
|
17
|
+
features: ("commands" | "webview" | "language" | "themes")[];
|
|
18
18
|
activation: "onCommand" | "onLanguage" | "startup";
|
|
19
19
|
publisher: string;
|
|
20
20
|
}>;
|
|
@@ -24,7 +24,7 @@ export declare function configureBrowserExtension(): Promise<{
|
|
|
24
24
|
export declare function configureVSCodeExtension(): Promise<{
|
|
25
25
|
displayName: string;
|
|
26
26
|
description: string;
|
|
27
|
-
features: ("
|
|
27
|
+
features: ("commands" | "webview" | "language" | "themes")[];
|
|
28
28
|
activation: "onCommand" | "onLanguage" | "startup";
|
|
29
29
|
publisher: string;
|
|
30
30
|
}>;
|
package/bin/impl/pub/impl.d.ts
CHANGED
|
@@ -3,6 +3,6 @@ import type { PerfTimer } from "../types/mod.js";
|
|
|
3
3
|
/**
|
|
4
4
|
* Main entry point for the rse build and publish process.
|
|
5
5
|
* Handles building and publishing for both main project and libraries.
|
|
6
|
-
* @see `src-ts/
|
|
6
|
+
* @see `src-ts/impl/build/impl.ts` for build main function implementation.
|
|
7
7
|
*/
|
|
8
8
|
export declare function dlerPub(timer: PerfTimer, isDev: boolean, config?: ReliverseConfig): Promise<void>;
|
|
@@ -2,4 +2,4 @@ import type { PerfTimer } from "../types/mod.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Publishes a library to the specified commonPubRegistry.
|
|
4
4
|
*/
|
|
5
|
-
export declare function library_publishLibrary(effectivePubRegistry: "jsr" | "npm" | "npm-jsr" | undefined, libName: string, npmOutDir: string, jsrOutDir: string, distJsrDryRun: boolean, distJsrFailOnWarn: boolean, distJsrAllowDirty: boolean, distJsrSlowTypes: boolean, isDev: boolean, timer: PerfTimer): Promise<void>;
|
|
5
|
+
export declare function library_publishLibrary(effectivePubRegistry: "jsr" | "npm" | "npm-jsr" | undefined, libName: string, npmOutDir: string, jsrOutDir: string, distJsrDryRun: boolean, distJsrFailOnWarn: boolean, distJsrAllowDirty: boolean, distJsrSlowTypes: boolean, isDev: boolean, timer: PerfTimer, shouldShowSpinner?: boolean): Promise<void>;
|
|
@@ -6,7 +6,7 @@ import { CONCURRENCY_DEFAULT } from "../config/constants.js";
|
|
|
6
6
|
import { withWorkingDirectory } from "../utils/utils-error-cwd.js";
|
|
7
7
|
import { writeFileSafe } from "../utils/utils-fs.js";
|
|
8
8
|
import { pausePerfTimer, resumePerfTimer } from "../utils/utils-perf.js";
|
|
9
|
-
export async function library_publishLibrary(effectivePubRegistry, libName, npmOutDir, jsrOutDir, distJsrDryRun, distJsrFailOnWarn, distJsrAllowDirty, distJsrSlowTypes, isDev, timer) {
|
|
9
|
+
export async function library_publishLibrary(effectivePubRegistry, libName, npmOutDir, jsrOutDir, distJsrDryRun, distJsrFailOnWarn, distJsrAllowDirty, distJsrSlowTypes, isDev, timer, shouldShowSpinner = false) {
|
|
10
10
|
switch (effectivePubRegistry) {
|
|
11
11
|
case "jsr":
|
|
12
12
|
relinka("verbose", `Publishing lib ${libName} to JSR only...`);
|
|
@@ -19,19 +19,36 @@ export async function library_publishLibrary(effectivePubRegistry, libName, npmO
|
|
|
19
19
|
distJsrSlowTypes,
|
|
20
20
|
libName,
|
|
21
21
|
isDev,
|
|
22
|
-
timer
|
|
22
|
+
timer,
|
|
23
|
+
shouldShowSpinner
|
|
23
24
|
);
|
|
24
25
|
break;
|
|
25
26
|
case "npm":
|
|
26
27
|
relinka("verbose", `Publishing lib ${libName} to NPM only...`);
|
|
27
28
|
relinka("null", "");
|
|
28
|
-
await library_pubToNpm(
|
|
29
|
+
await library_pubToNpm(
|
|
30
|
+
npmOutDir,
|
|
31
|
+
distJsrDryRun,
|
|
32
|
+
distJsrFailOnWarn,
|
|
33
|
+
libName,
|
|
34
|
+
isDev,
|
|
35
|
+
timer,
|
|
36
|
+
shouldShowSpinner
|
|
37
|
+
);
|
|
29
38
|
break;
|
|
30
39
|
case "npm-jsr": {
|
|
31
40
|
relinka("verbose", `Publishing lib ${libName} to both NPM and JSR...`);
|
|
32
41
|
relinka("null", "");
|
|
33
42
|
const publishTasks = [
|
|
34
|
-
() => library_pubToNpm(
|
|
43
|
+
() => library_pubToNpm(
|
|
44
|
+
npmOutDir,
|
|
45
|
+
distJsrDryRun,
|
|
46
|
+
distJsrFailOnWarn,
|
|
47
|
+
libName,
|
|
48
|
+
isDev,
|
|
49
|
+
timer,
|
|
50
|
+
shouldShowSpinner
|
|
51
|
+
),
|
|
35
52
|
() => library_pubToJsr(
|
|
36
53
|
jsrOutDir,
|
|
37
54
|
distJsrDryRun,
|
|
@@ -40,7 +57,8 @@ export async function library_publishLibrary(effectivePubRegistry, libName, npmO
|
|
|
40
57
|
distJsrSlowTypes,
|
|
41
58
|
libName,
|
|
42
59
|
isDev,
|
|
43
|
-
timer
|
|
60
|
+
timer,
|
|
61
|
+
shouldShowSpinner
|
|
44
62
|
)
|
|
45
63
|
];
|
|
46
64
|
await pAll(publishTasks, { concurrency: CONCURRENCY_DEFAULT });
|
|
@@ -53,7 +71,7 @@ export async function library_publishLibrary(effectivePubRegistry, libName, npmO
|
|
|
53
71
|
);
|
|
54
72
|
}
|
|
55
73
|
}
|
|
56
|
-
async function library_pubToJsr(libOutDir, distJsrDryRun, distJsrFailOnWarn, distJsrAllowDirty, distJsrSlowTypes, libName, isDev, timer) {
|
|
74
|
+
async function library_pubToJsr(libOutDir, distJsrDryRun, distJsrFailOnWarn, distJsrAllowDirty, distJsrSlowTypes, libName, isDev, timer, shouldShowSpinner = false) {
|
|
57
75
|
relinka("verbose", `Starting library_pubToJsr for lib: ${libName}`);
|
|
58
76
|
let bunDirCreated = false;
|
|
59
77
|
const bunDir = "node_modules/bun";
|
|
@@ -79,7 +97,8 @@ async function library_pubToJsr(libOutDir, distJsrDryRun, distJsrFailOnWarn, dis
|
|
|
79
97
|
distJsrDryRun ? "--dry-run" : "",
|
|
80
98
|
distJsrFailOnWarn ? "--fail-on-warn" : "",
|
|
81
99
|
distJsrAllowDirty ? "--allow-dirty" : "",
|
|
82
|
-
distJsrSlowTypes ? "--allow-slow-types" : ""
|
|
100
|
+
distJsrSlowTypes ? "--allow-slow-types" : "",
|
|
101
|
+
shouldShowSpinner ? "--silent" : ""
|
|
83
102
|
].filter(Boolean).join(" ");
|
|
84
103
|
await execaCommand(command, { stdio: "inherit" });
|
|
85
104
|
relinka("null", "");
|
|
@@ -99,14 +118,18 @@ async function library_pubToJsr(libOutDir, distJsrDryRun, distJsrFailOnWarn, dis
|
|
|
99
118
|
}
|
|
100
119
|
}
|
|
101
120
|
}
|
|
102
|
-
async function library_pubToNpm(libOutDir, distJsrDryRun, _distJsrFailOnWarn, libName, _isDev, timer) {
|
|
121
|
+
async function library_pubToNpm(libOutDir, distJsrDryRun, _distJsrFailOnWarn, libName, _isDev, timer, shouldShowSpinner = false) {
|
|
103
122
|
relinka("verbose", `Starting library_pubToNpm for lib: ${libName}`);
|
|
104
123
|
try {
|
|
105
124
|
if (timer) pausePerfTimer(timer);
|
|
106
125
|
await withWorkingDirectory(libOutDir, async () => {
|
|
107
126
|
relinka("verbose", `Publishing lib ${libName} to NPM from ${libOutDir}`);
|
|
108
127
|
relinka("null", "");
|
|
109
|
-
const command = [
|
|
128
|
+
const command = [
|
|
129
|
+
"bun publish",
|
|
130
|
+
distJsrDryRun ? "--dry-run" : "",
|
|
131
|
+
shouldShowSpinner ? "--silent" : ""
|
|
132
|
+
].filter(Boolean).join(" ");
|
|
110
133
|
await execaCommand(command, { stdio: "inherit" });
|
|
111
134
|
relinka("null", "");
|
|
112
135
|
relinka(
|
|
@@ -2,8 +2,8 @@ import type { PerfTimer } from "../types/mod.js";
|
|
|
2
2
|
/**
|
|
3
3
|
* Publishes the JSR distribution.
|
|
4
4
|
*/
|
|
5
|
-
export declare function regular_pubToJsr(distJsrDryRun: boolean, distJsrFailOnWarn: boolean, isDev: boolean, commonPubPause: boolean, distJsrDirName: string, distJsrAllowDirty: boolean, distJsrSlowTypes: boolean, timer: PerfTimer): Promise<void>;
|
|
5
|
+
export declare function regular_pubToJsr(distJsrDryRun: boolean, distJsrFailOnWarn: boolean, isDev: boolean, commonPubPause: boolean, distJsrDirName: string, distJsrAllowDirty: boolean, distJsrSlowTypes: boolean, timer: PerfTimer, shouldShowSpinner?: boolean): Promise<void>;
|
|
6
6
|
/**
|
|
7
7
|
* Publishes the NPM distribution.
|
|
8
8
|
*/
|
|
9
|
-
export declare function regular_pubToNpm(distJsrDryRun: boolean, _isDev: boolean, commonPubPause: boolean, distNpmDirName: string, timer: PerfTimer): Promise<void>;
|
|
9
|
+
export declare function regular_pubToNpm(distJsrDryRun: boolean, _isDev: boolean, commonPubPause: boolean, distNpmDirName: string, timer: PerfTimer, shouldShowSpinner?: boolean): Promise<void>;
|
|
@@ -6,7 +6,7 @@ import { PROJECT_ROOT } from "../config/constants.js";
|
|
|
6
6
|
import { withWorkingDirectory } from "../utils/utils-error-cwd.js";
|
|
7
7
|
import { writeFileSafe } from "../utils/utils-fs.js";
|
|
8
8
|
import { pausePerfTimer, resumePerfTimer } from "../utils/utils-perf.js";
|
|
9
|
-
export async function regular_pubToJsr(distJsrDryRun, distJsrFailOnWarn, isDev, commonPubPause, distJsrDirName, distJsrAllowDirty, distJsrSlowTypes, timer) {
|
|
9
|
+
export async function regular_pubToJsr(distJsrDryRun, distJsrFailOnWarn, isDev, commonPubPause, distJsrDirName, distJsrAllowDirty, distJsrSlowTypes, timer, shouldShowSpinner = false) {
|
|
10
10
|
try {
|
|
11
11
|
if (!commonPubPause) {
|
|
12
12
|
relinka("verbose", "Publishing to JSR...");
|
|
@@ -32,7 +32,8 @@ export async function regular_pubToJsr(distJsrDryRun, distJsrFailOnWarn, isDev,
|
|
|
32
32
|
distJsrDryRun ? "--dry-run" : "",
|
|
33
33
|
distJsrFailOnWarn ? "--fail-on-warn" : "",
|
|
34
34
|
distJsrAllowDirty ? "--allow-dirty" : "",
|
|
35
|
-
distJsrSlowTypes ? "--allow-slow-types" : ""
|
|
35
|
+
distJsrSlowTypes ? "--allow-slow-types" : "",
|
|
36
|
+
shouldShowSpinner ? "--silent" : ""
|
|
36
37
|
].filter(Boolean).join(" ");
|
|
37
38
|
relinka("verbose", `Running publish command: ${command}`);
|
|
38
39
|
await execaCommand(command, { stdio: "inherit" });
|
|
@@ -53,14 +54,18 @@ export async function regular_pubToJsr(distJsrDryRun, distJsrFailOnWarn, isDev,
|
|
|
53
54
|
throw error;
|
|
54
55
|
}
|
|
55
56
|
}
|
|
56
|
-
export async function regular_pubToNpm(distJsrDryRun, _isDev, commonPubPause, distNpmDirName, timer) {
|
|
57
|
+
export async function regular_pubToNpm(distJsrDryRun, _isDev, commonPubPause, distNpmDirName, timer, shouldShowSpinner = false) {
|
|
57
58
|
try {
|
|
58
59
|
if (!commonPubPause) {
|
|
59
60
|
relinka("verbose", "Publishing to NPM...");
|
|
60
61
|
const distNpmDirNameResolved = path.resolve(PROJECT_ROOT, distNpmDirName);
|
|
61
62
|
if (timer) pausePerfTimer(timer);
|
|
62
63
|
await withWorkingDirectory(distNpmDirNameResolved, async () => {
|
|
63
|
-
const command = [
|
|
64
|
+
const command = [
|
|
65
|
+
"bun publish",
|
|
66
|
+
distJsrDryRun ? "--dry-run" : "",
|
|
67
|
+
shouldShowSpinner ? "--silent" : ""
|
|
68
|
+
].filter(Boolean).join(" ");
|
|
64
69
|
relinka("verbose", `Running publish command: ${command}`);
|
|
65
70
|
await execaCommand(command, { stdio: "inherit" });
|
|
66
71
|
relinka("null", "");
|
package/bin/impl/rempts/cmd.js
CHANGED
|
@@ -4,7 +4,7 @@ import { relinka } from "@reliverse/relinka";
|
|
|
4
4
|
import { createJiti } from "jiti";
|
|
5
5
|
export async function handleReliverseConfig() {
|
|
6
6
|
const dlerConfigPath = path.resolve("reliverse.ts");
|
|
7
|
-
let cmdsRoot = "src
|
|
7
|
+
let cmdsRoot = "src/app";
|
|
8
8
|
let cliFilePath = "";
|
|
9
9
|
try {
|
|
10
10
|
const jiti = createJiti(import.meta.url);
|
|
@@ -14,7 +14,7 @@ export async function handleReliverseConfig() {
|
|
|
14
14
|
const coreIsCLI = dlerConfig?.coreIsCLI;
|
|
15
15
|
if (!coreIsCLI?.enabled || !coreIsCLI?.scripts) {
|
|
16
16
|
cliFilePath = await ensureCliFile("src/cli.ts");
|
|
17
|
-
cmdsRoot = "src
|
|
17
|
+
cmdsRoot = "src/app";
|
|
18
18
|
} else {
|
|
19
19
|
const firstScript = Object.values(coreIsCLI.scripts)[0];
|
|
20
20
|
const scriptPath = path.resolve(firstScript);
|
|
@@ -29,16 +29,16 @@ export async function handleReliverseConfig() {
|
|
|
29
29
|
}
|
|
30
30
|
} else {
|
|
31
31
|
relinka("warn", `${scriptPath} doesn't use @reliverse/rempts`);
|
|
32
|
-
cmdsRoot = "src
|
|
32
|
+
cmdsRoot = "src/app";
|
|
33
33
|
}
|
|
34
34
|
} else {
|
|
35
35
|
cliFilePath = await ensureCliFile(scriptPath);
|
|
36
|
-
cmdsRoot = "src
|
|
36
|
+
cmdsRoot = "src/app";
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
} catch {
|
|
40
40
|
cliFilePath = await ensureCliFile("src/cli.ts");
|
|
41
|
-
cmdsRoot = "src
|
|
41
|
+
cmdsRoot = "src/app";
|
|
42
42
|
}
|
|
43
43
|
return { cmdsRoot: path.resolve(cmdsRoot), cliFile: cliFilePath };
|
|
44
44
|
}
|
|
@@ -75,7 +75,7 @@ export async function findCommandDirs(root) {
|
|
|
75
75
|
export async function generateCommandArgsMap(cmdDirs) {
|
|
76
76
|
let interfaceContent = "// Argument types for each command based on their defineArgs\ninterface CommandArgsMap {\n";
|
|
77
77
|
for (const dir of cmdDirs) {
|
|
78
|
-
const cmdPath = path.join("src
|
|
78
|
+
const cmdPath = path.join("src/app", dir, "cmd.ts");
|
|
79
79
|
try {
|
|
80
80
|
if (await fs.pathExists(cmdPath)) {
|
|
81
81
|
const content = await fs.readFile(cmdPath, "utf-8");
|
|
@@ -254,7 +254,7 @@ const cliTemplate = `import { defineCommand, runMain } from "@reliverse/rempts";
|
|
|
254
254
|
await runMain(
|
|
255
255
|
defineCommand({
|
|
256
256
|
// empty object activates file-based
|
|
257
|
-
// commands in the src
|
|
257
|
+
// commands in the src/app directory
|
|
258
258
|
}),
|
|
259
259
|
);
|
|
260
260
|
`;
|
|
@@ -186,7 +186,7 @@ export function printUsage(isDev) {
|
|
|
186
186
|
if (isDev) {
|
|
187
187
|
relinka(
|
|
188
188
|
"log",
|
|
189
|
-
"bun dev:tools agg --input src-ts/
|
|
189
|
+
"bun dev:tools agg --input src-ts/impl --out src-ts/mod.ts --recursive --named --strip src-ts/impl"
|
|
190
190
|
);
|
|
191
191
|
} else {
|
|
192
192
|
relinka(
|
|
@@ -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-ts/
|
|
7
|
-
"src-ts/
|
|
6
|
+
"src-ts/impl/[locale]",
|
|
7
|
+
"src-ts/impl/[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-ts/
|
|
28
|
+
const layoutPath = path.join(projectPath, "src-ts/impl/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-ts/
|
|
61
|
+
const pagePath = path.join(projectPath, "src-ts/impl/page.tsx");
|
|
62
62
|
if (!await fs.pathExists(pagePath)) {
|
|
63
63
|
const pageContent = `
|
|
64
64
|
import { useTranslation } from "../i18n";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { re } from "@reliverse/relico";
|
|
2
|
-
import {
|
|
2
|
+
import { inputPrompt } from "@reliverse/rempts";
|
|
3
3
|
import { DEFAULT_CLI_USERNAME } from "../../config/constants.js";
|
|
4
4
|
import { updateReliverseConfig } from "../../config/update.js";
|
|
5
5
|
export async function askUsernameFrontend(config, shouldAskIfExists) {
|
|
@@ -21,7 +21,6 @@ export async function askUsernameFrontend(config, shouldAskIfExists) {
|
|
|
21
21
|
return previousName;
|
|
22
22
|
}
|
|
23
23
|
await updateReliverseConfig(process.cwd(), { projectAuthor: DEFAULT_CLI_USERNAME }, false);
|
|
24
|
-
deleteLastLine();
|
|
25
24
|
return DEFAULT_CLI_USERNAME;
|
|
26
25
|
}
|
|
27
26
|
await updateReliverseConfig(process.cwd(), { projectAuthor: trimmedInput }, false);
|
|
@@ -153,12 +153,9 @@ export declare function createTransferSpinner(operation: string, options?: Spinn
|
|
|
153
153
|
error: (error: Error | string) => void;
|
|
154
154
|
};
|
|
155
155
|
export declare const spinners: {
|
|
156
|
-
readonly binary: import("cli-spinners").Spinner;
|
|
157
|
-
readonly arrow: import("cli-spinners").Spinner;
|
|
158
156
|
readonly line: import("cli-spinners").Spinner;
|
|
157
|
+
readonly binary: import("cli-spinners").Spinner;
|
|
159
158
|
readonly pipe: import("cli-spinners").Spinner;
|
|
160
|
-
readonly material: import("cli-spinners").Spinner;
|
|
161
|
-
readonly star: import("cli-spinners").Spinner;
|
|
162
159
|
readonly dots: import("cli-spinners").Spinner;
|
|
163
160
|
readonly dots2: import("cli-spinners").Spinner;
|
|
164
161
|
readonly dots3: import("cli-spinners").Spinner;
|
|
@@ -176,6 +173,7 @@ export declare const spinners: {
|
|
|
176
173
|
readonly line2: import("cli-spinners").Spinner;
|
|
177
174
|
readonly simpleDots: import("cli-spinners").Spinner;
|
|
178
175
|
readonly simpleDotsScrolling: import("cli-spinners").Spinner;
|
|
176
|
+
readonly star: import("cli-spinners").Spinner;
|
|
179
177
|
readonly star2: import("cli-spinners").Spinner;
|
|
180
178
|
readonly flip: import("cli-spinners").Spinner;
|
|
181
179
|
readonly hamburger: import("cli-spinners").Spinner;
|
|
@@ -207,6 +205,7 @@ export declare const spinners: {
|
|
|
207
205
|
readonly toggle11: import("cli-spinners").Spinner;
|
|
208
206
|
readonly toggle12: import("cli-spinners").Spinner;
|
|
209
207
|
readonly toggle13: import("cli-spinners").Spinner;
|
|
208
|
+
readonly arrow: import("cli-spinners").Spinner;
|
|
210
209
|
readonly arrow2: import("cli-spinners").Spinner;
|
|
211
210
|
readonly arrow3: import("cli-spinners").Spinner;
|
|
212
211
|
readonly bouncingBar: import("cli-spinners").Spinner;
|
|
@@ -216,6 +215,7 @@ export declare const spinners: {
|
|
|
216
215
|
readonly hearts: import("cli-spinners").Spinner;
|
|
217
216
|
readonly clock: import("cli-spinners").Spinner;
|
|
218
217
|
readonly earth: import("cli-spinners").Spinner;
|
|
218
|
+
readonly material: import("cli-spinners").Spinner;
|
|
219
219
|
readonly moon: import("cli-spinners").Spinner;
|
|
220
220
|
readonly runner: import("cli-spinners").Spinner;
|
|
221
221
|
readonly pong: import("cli-spinners").Spinner;
|
package/package.json
CHANGED
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"@radix-ui/react-label": "^2.1.7",
|
|
14
14
|
"@radix-ui/react-select": "^2.2.6",
|
|
15
15
|
"@radix-ui/react-slot": "^1.2.3",
|
|
16
|
-
"@reliverse/bleump": "^1.1.
|
|
16
|
+
"@reliverse/bleump": "^1.1.7",
|
|
17
17
|
"@reliverse/pathkit": "^1.3.4",
|
|
18
18
|
"@reliverse/reglob": "^1.0.0",
|
|
19
19
|
"@reliverse/relico": "^1.3.9",
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
"license": "MIT",
|
|
124
124
|
"name": "@reliverse/dler",
|
|
125
125
|
"type": "module",
|
|
126
|
-
"version": "1.7.
|
|
126
|
+
"version": "1.7.125",
|
|
127
127
|
"author": "reliverse",
|
|
128
128
|
"bugs": {
|
|
129
129
|
"email": "blefnk@gmail.com",
|