@lovrabet/rabetbase-cli 2.0.2-beta.1
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/LICENSE +45 -0
- package/README.md +605 -0
- package/lib/ai-setup/config.js +1 -0
- package/lib/api/api-doc-ui.js +1 -0
- package/lib/api/api-doc.js +1 -0
- package/lib/api/api-pull-ui.js +1 -0
- package/lib/api/fetch-model-list.js +1 -0
- package/lib/api/generate-api-file.js +1 -0
- package/lib/api/main.js +1 -0
- package/lib/api/pull-silent.js +1 -0
- package/lib/app-menu/app-menu-sync-ui.js +1 -0
- package/lib/app-menu/create-menu.js +1 -0
- package/lib/app-menu/get-local-pages.js +1 -0
- package/lib/app-menu/get-online-menu-list.js +1 -0
- package/lib/app-menu/types.js +1 -0
- package/lib/app-menu/use-get-online-menu-list.js +1 -0
- package/lib/app-menu/utils.js +1 -0
- package/lib/app-menu/valid-url.js +1 -0
- package/lib/app-menu-update-cdn/current-content.js +1 -0
- package/lib/app-menu-update-cdn/input-cdn-asset.js +1 -0
- package/lib/app-menu-update-cdn/main.js +1 -0
- package/lib/app-menu-update-cdn/types.js +1 -0
- package/lib/app-menu-update-cdn/update-menu-cdn-url.js +1 -0
- package/lib/auth/auth-server-ui.js +1 -0
- package/lib/auth/auth-server.js +1 -0
- package/lib/auth/constant.js +1 -0
- package/lib/auth/get-cookie.js +1 -0
- package/lib/auth/is-session-valid.js +1 -0
- package/lib/auth/logout.js +1 -0
- package/lib/cli-flags.js +1 -0
- package/lib/cli.js +2 -0
- package/lib/commands/api.js +1 -0
- package/lib/commands/app.js +1 -0
- package/lib/commands/auth.js +1 -0
- package/lib/commands/bff/delete.js +1 -0
- package/lib/commands/bff/detail.js +1 -0
- package/lib/commands/bff/index.js +1 -0
- package/lib/commands/bff/list.js +1 -0
- package/lib/commands/bff/new.js +1 -0
- package/lib/commands/bff/pull.js +1 -0
- package/lib/commands/bff/push.js +1 -0
- package/lib/commands/bff/status.js +1 -0
- package/lib/commands/build.js +1 -0
- package/lib/commands/codegen/index.js +1 -0
- package/lib/commands/codegen/sdk.js +1 -0
- package/lib/commands/codegen/sql.js +1 -0
- package/lib/commands/config.js +1 -0
- package/lib/commands/create.js +1 -0
- package/lib/commands/dataset/detail.js +1 -0
- package/lib/commands/dataset/index.js +1 -0
- package/lib/commands/dataset/links.js +1 -0
- package/lib/commands/dataset/list.js +1 -0
- package/lib/commands/dataset/operations.js +1 -0
- package/lib/commands/init.js +1 -0
- package/lib/commands/logout.js +1 -0
- package/lib/commands/logs.js +1 -0
- package/lib/commands/mcp.js +1 -0
- package/lib/commands/menu.js +1 -0
- package/lib/commands/preview.js +1 -0
- package/lib/commands/registry.js +1 -0
- package/lib/commands/run.js +1 -0
- package/lib/commands/skill.js +1 -0
- package/lib/commands/sql/detail.js +1 -0
- package/lib/commands/sql/exec.js +1 -0
- package/lib/commands/sql/index.js +1 -0
- package/lib/commands/sql/list.js +1 -0
- package/lib/commands/sql/save.js +1 -0
- package/lib/commands/sql/validate.js +1 -0
- package/lib/commands/start.js +1 -0
- package/lib/config/config-help.js +1 -0
- package/lib/config/main.js +1 -0
- package/lib/constant/cli.js +1 -0
- package/lib/constant/domain.js +1 -0
- package/lib/constant/env.js +1 -0
- package/lib/context.js +1 -0
- package/lib/core/alias-resolver.js +1 -0
- package/lib/core/api-client.js +1 -0
- package/lib/core/bff/config.js +1 -0
- package/lib/core/bff/file-system.js +1 -0
- package/lib/core/bff/hash.js +1 -0
- package/lib/core/bff/lock.js +1 -0
- package/lib/core/bff/types.js +1 -0
- package/lib/core/bff/utils.js +1 -0
- package/lib/core/db-resolver.js +1 -0
- package/lib/core/sql-validator.js +1 -0
- package/lib/create-app/enhanced-guided-create.js +1 -0
- package/lib/create-app/format-elapsed.js +1 -0
- package/lib/create-app/main.js +1 -0
- package/lib/create-app/non-interactive.js +1 -0
- package/lib/create-app/task-finished.js +1 -0
- package/lib/create-app/task-loading.js +1 -0
- package/lib/create-app/task-running.js +1 -0
- package/lib/create-app/task-time.js +1 -0
- package/lib/create-app/use-copy-project-template.js +1 -0
- package/lib/create-app/use-format-code.js +1 -0
- package/lib/create-app/use-install-dependencies.js +1 -0
- package/lib/errors.js +1 -0
- package/lib/framework/flags.js +1 -0
- package/lib/framework/help.js +1 -0
- package/lib/framework/index.js +1 -0
- package/lib/framework/output.js +1 -0
- package/lib/framework/response.js +1 -0
- package/lib/framework/runner.js +1 -0
- package/lib/framework/types.js +1 -0
- package/lib/generated/build-info.js +1 -0
- package/lib/help.js +1 -0
- package/lib/init/main.js +1 -0
- package/lib/mcp/McpInstallUI.js +1 -0
- package/lib/mcp/claude.js +1 -0
- package/lib/mcp/cursor.js +1 -0
- package/lib/mcp/main.js +1 -0
- package/lib/mcp/mcp-install-non-interactive.js +1 -0
- package/lib/mcp/mcp-installer.js +1 -0
- package/lib/skills/main.js +1 -0
- package/lib/skills/npx-skills-add.js +1 -0
- package/lib/types/index.js +1 -0
- package/lib/ui/IDESelector.js +1 -0
- package/lib/ui/useIDESelection.js +1 -0
- package/lib/utils/ai_config.js +1 -0
- package/lib/utils/cdn-config.js +1 -0
- package/lib/utils/check-sdk-version.js +1 -0
- package/lib/utils/cli-version-check.js +1 -0
- package/lib/utils/config.js +1 -0
- package/lib/utils/copy-directory.js +1 -0
- package/lib/utils/file-utils.js +1 -0
- package/lib/utils/guides-cdn.js +1 -0
- package/lib/utils/http-client.js +1 -0
- package/lib/utils/logger.js +1 -0
- package/lib/utils/rules-cdn.js +1 -0
- package/lib/utils/sleep.js +1 -0
- package/lib/utils/template-replacer.js +1 -0
- package/package.json +77 -0
- package/sidecar/flags.json +10 -0
- package/templates/README.md +97 -0
- package/templates/generate-api/api.ts.tpl +47 -0
- package/templates/generate-api/client.ts.tpl +64 -0
- package/templates/projects/sub-app-react-demo/.prettierrc +1 -0
- package/templates/projects/sub-app-react-demo/CHANGELOG.md +53 -0
- package/templates/projects/sub-app-react-demo/README.md +318 -0
- package/templates/projects/sub-app-react-demo/docs/API_RULE_CHANGE.md +212 -0
- package/templates/projects/sub-app-react-demo/docs/quick-start.md +526 -0
- package/templates/projects/sub-app-react-demo/index.html +27 -0
- package/templates/projects/sub-app-react-demo/package.json +34 -0
- package/templates/projects/sub-app-react-demo/public/logo.svg +1 -0
- package/templates/projects/sub-app-react-demo/public/vite.svg +1 -0
- package/templates/projects/sub-app-react-demo/src/api/api.ts +83 -0
- package/templates/projects/sub-app-react-demo/src/api/client.ts +64 -0
- package/templates/projects/sub-app-react-demo/src/layouts/MainLayout.tsx +311 -0
- package/templates/projects/sub-app-react-demo/src/main.tsx +48 -0
- package/templates/projects/sub-app-react-demo/src/pages/dashboard/index.tsx +572 -0
- package/templates/projects/sub-app-react-demo/src/pages/data-screen/index.tsx +526 -0
- package/templates/projects/sub-app-react-demo/src/pages/index.tsx +467 -0
- package/templates/projects/sub-app-react-demo/src/pages/sdk-demo/index.tsx +453 -0
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.module.css +293 -0
- package/templates/projects/sub-app-react-demo/src/pages/workbench/index.tsx +155 -0
- package/templates/projects/sub-app-react-demo/src/router/index.tsx +30 -0
- package/templates/projects/sub-app-react-demo/src/style.css +92 -0
- package/templates/projects/sub-app-react-demo/src/utils/api.ts +12 -0
- package/templates/projects/sub-app-react-demo/src/vite-env.d.ts +2 -0
- package/templates/projects/sub-app-react-demo/tsconfig.json +26 -0
- package/templates/projects/sub-app-react-demo/vite.config.ts +111 -0
- package/templates/rules/lovrabet_rules.mdc.tpl +891 -0
- package/templates/skill/SKILL.md.tpl +120 -0
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { defineConfig, loadEnv } from "vite";
|
|
2
|
+
import { dirname } from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import react from "@vitejs/plugin-react";
|
|
5
|
+
import htmlPlugin from "vite-plugin-index-html";
|
|
6
|
+
import pluginExternal from "vite-plugin-external";
|
|
7
|
+
import Pages from "vite-plugin-pages";
|
|
8
|
+
import pkgJson from "./package.json";
|
|
9
|
+
|
|
10
|
+
const version = pkgJson.version;
|
|
11
|
+
const appName = pkgJson.name.split("/").pop();
|
|
12
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
13
|
+
|
|
14
|
+
// https://vitejs.dev/config/
|
|
15
|
+
export default defineConfig(async ({ mode }) => {
|
|
16
|
+
const env = loadEnv(mode, __dirname);
|
|
17
|
+
const isDev = mode === "development";
|
|
18
|
+
const port = Number(env.PORT) || 5173;
|
|
19
|
+
const isCdn = !isDev && Boolean(process.env.CDN_DOMAIN);
|
|
20
|
+
const outDir = isCdn ? `dist/${appName}/${version}` : "dist";
|
|
21
|
+
const base = isCdn ? `${process.env.CDN_DOMAIN}${outDir}/` : "/";
|
|
22
|
+
|
|
23
|
+
// 获取 https 证书配置
|
|
24
|
+
const httpsConfig = await (
|
|
25
|
+
await fetch("https://g.yuntooai.com/cert/lovrabet-dev.json")
|
|
26
|
+
).json();
|
|
27
|
+
|
|
28
|
+
return {
|
|
29
|
+
base,
|
|
30
|
+
envDir: __dirname,
|
|
31
|
+
plugins: [
|
|
32
|
+
react(),
|
|
33
|
+
Pages({
|
|
34
|
+
dirs: "src/pages",
|
|
35
|
+
extensions: ["tsx"],
|
|
36
|
+
routeStyle: "remix", // 使用 remix 风格,更好兼容 React Router v6
|
|
37
|
+
importMode: "sync", // 使用同步导入避免 Suspense 问题
|
|
38
|
+
}),
|
|
39
|
+
htmlPlugin({
|
|
40
|
+
input: "/src/main.tsx", // 使用绝对路径避免嵌套路由问题
|
|
41
|
+
preserveEntrySignatures: "exports-only",
|
|
42
|
+
}),
|
|
43
|
+
pluginExternal({
|
|
44
|
+
externals: {
|
|
45
|
+
react: "React",
|
|
46
|
+
"react-dom": "ReactDOM",
|
|
47
|
+
antd: "antd",
|
|
48
|
+
dayjs: "dayjs",
|
|
49
|
+
},
|
|
50
|
+
}),
|
|
51
|
+
],
|
|
52
|
+
resolve: {
|
|
53
|
+
alias: {
|
|
54
|
+
"@": "/src",
|
|
55
|
+
},
|
|
56
|
+
},
|
|
57
|
+
// 可选配置:提供https自签名证书及跨域访问能力
|
|
58
|
+
// 因为接口域名为 runtime.lovrabet.com 存在跨域,服务端配置了允许 dev.lovrabet.com 的跨域请求,从而实现本地开发能够正常请求接口
|
|
59
|
+
// 这些配置不是必须的,你也可以使用 proxy 等任意手段自行处理跨域问题
|
|
60
|
+
server: isDev
|
|
61
|
+
? {
|
|
62
|
+
port,
|
|
63
|
+
open: `https://dev.lovrabet.com:${port}`,
|
|
64
|
+
strictPort: true,
|
|
65
|
+
host: "0.0.0.0",
|
|
66
|
+
https: httpsConfig,
|
|
67
|
+
hmr: {
|
|
68
|
+
host: "dev.lovrabet.com",
|
|
69
|
+
port: 5173,
|
|
70
|
+
protocol: "wss",
|
|
71
|
+
},
|
|
72
|
+
headers: {
|
|
73
|
+
"Access-Control-Allow-Origin": "*",
|
|
74
|
+
"Access-Control-Allow-Methods":
|
|
75
|
+
"GET, POST, PUT, DELETE, PATCH, OPTIONS",
|
|
76
|
+
"Access-Control-Allow-Headers":
|
|
77
|
+
"X-Requested-With, Content-Type, Authorization",
|
|
78
|
+
},
|
|
79
|
+
}
|
|
80
|
+
: undefined,
|
|
81
|
+
// preview 模式也使用 https
|
|
82
|
+
preview: {
|
|
83
|
+
port: 4173,
|
|
84
|
+
open: `https://dev.lovrabet.com:4173`,
|
|
85
|
+
strictPort: true,
|
|
86
|
+
host: "0.0.0.0",
|
|
87
|
+
https: httpsConfig,
|
|
88
|
+
headers: {
|
|
89
|
+
"Access-Control-Allow-Origin": "*",
|
|
90
|
+
"Access-Control-Allow-Methods":
|
|
91
|
+
"GET, POST, PUT, DELETE, PATCH, OPTIONS",
|
|
92
|
+
"Access-Control-Allow-Headers":
|
|
93
|
+
"X-Requested-With, Content-Type, Authorization",
|
|
94
|
+
},
|
|
95
|
+
},
|
|
96
|
+
build: {
|
|
97
|
+
outDir,
|
|
98
|
+
target: "esnext",
|
|
99
|
+
rollupOptions: {
|
|
100
|
+
output: {
|
|
101
|
+
format: "es" as const,
|
|
102
|
+
entryFileNames: `assets/[name].js`,
|
|
103
|
+
assetFileNames: `assets/[name].css`,
|
|
104
|
+
},
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
optimizeDeps: {
|
|
108
|
+
include: ["react", "react-dom", "antd", "dayjs"],
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
});
|