@better-fullstack/types 1.6.0 → 1.6.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/dist/defaults-COKMyZ0E.d.mts +8 -0
- package/dist/defaults-COKMyZ0E.d.mts.map +1 -0
- package/dist/defaults-aGwVXJh5.mjs +90 -0
- package/dist/defaults-aGwVXJh5.mjs.map +1 -0
- package/dist/defaults.d.mts +4 -0
- package/dist/defaults.mjs +3 -0
- package/dist/index.d.mts +25 -91
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +170 -12
- package/dist/index.mjs.map +1 -1
- package/dist/json-schema.d.mts +379 -1
- package/dist/json-schema.d.mts.map +1 -1
- package/dist/json-schema.mjs +26 -2
- package/dist/json-schema.mjs.map +1 -1
- package/dist/{schemas-D7GE2nDP.d.mts → schemas-B_I1Oeyt.d.mts} +292 -4
- package/dist/schemas-B_I1Oeyt.d.mts.map +1 -0
- package/dist/{schemas-AEYe9g7W.mjs → schemas-Bg3JFNO5.mjs} +64 -4
- package/dist/schemas-Bg3JFNO5.mjs.map +1 -0
- package/dist/schemas.d.mts +2 -2
- package/dist/schemas.mjs +2 -2
- package/dist/types-D-yrwQnb.d.mts +95 -0
- package/dist/types-D-yrwQnb.d.mts.map +1 -0
- package/dist/types.d.mts +3 -0
- package/dist/types.mjs +1 -0
- package/package.json +9 -1
- package/dist/schemas-AEYe9g7W.mjs.map +0 -1
- package/dist/schemas-D7GE2nDP.d.mts.map +0 -1
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { $ as FrontendSchema, $t as
|
|
1
|
+
import { $ as FrontendSchema, $n as VALIDATION_VALUES, $t as PythonQualitySchema, A as DATABASE_SETUP_VALUES, An as SHADCN_BASE_VALUES, At as LoggingSchema, B as EcosystemSchema, Bn as ShadcnBaseSchema, Bt as PYTHON_ORM_VALUES, C as CLIInputSchema, Cn as RustLibrariesSchema, Ct as JavaBuildToolSchema, D as CSS_FRAMEWORK_VALUES, Dn as SEARCH_VALUES, Dt as JavaWebFrameworkSchema, E as CSSFrameworkSchema, En as RustWebFrameworkSchema, Et as JavaTestingLibrariesSchema, F as DirectoryConflictSchema, Fn as SHADCN_STYLE_VALUES, Ft as PACKAGE_MANAGER_VALUES, G as FILE_STORAGE_VALUES, Gn as ShadcnStyleSchema, Gt as PackageManagerSchema, H as EmailSchema, Hn as ShadcnFontSchema, Ht as PYTHON_TASK_QUEUE_VALUES, I as ECOSYSTEM_VALUES, In as STATE_MANAGEMENT_VALUES, It as PAYMENTS_VALUES, J as FRONTEND_VALUES, Jn as TESTING_VALUES, Jt as ProjectNameSchema, K as FILE_UPLOAD_VALUES, Kn as StateManagementSchema, Kt as PaymentsSchema, L as EFFECT_VALUES, Ln as SearchSchema, Lt as PYTHON_AI_VALUES, M as DIRECTORY_CONFLICT_VALUES, Mn as SHADCN_FONT_VALUES, Mt as ORMSchema, N as DatabaseSchema, Nn as SHADCN_ICON_LIBRARY_VALUES, Nt as ORM_VALUES, O as CachingSchema, On as SERVER_DEPLOY_VALUES, Ot as JobQueueSchema, P as DatabaseSetupSchema, Pn as SHADCN_RADIUS_VALUES, Pt as ObservabilitySchema, Q as FormsSchema, Qn as UI_LIBRARY_VALUES, Qt as PythonOrmSchema, R as EMAIL_VALUES, Rn as ServerDeploySchema, Rt as PYTHON_AUTH_VALUES, S as CACHING_VALUES, Sn as RustFrontendSchema, St as JavaAuthSchema, T as CMS_VALUES, Tn as RustOrmSchema, Tt as JavaOrmSchema, U as ExamplesSchema, Un as ShadcnIconLibrarySchema, Ut as PYTHON_VALIDATION_VALUES, V as EffectSchema, Vn as ShadcnColorThemeSchema, Vt as PYTHON_QUALITY_VALUES, W as FEATURE_FLAGS_VALUES, Wn as ShadcnRadiusSchema, Wt as PYTHON_WEB_FRAMEWORK_VALUES, X as FileStorageSchema, Xn as TestingSchema, Xt as PythonAuthSchema, Y as FeatureFlagsSchema, Yn as TemplateSchema, Yt as PythonAiSchema, Z as FileUploadSchema, Zn as UILibrarySchema, Zt as PythonGraphqlSchema, _ as AuthSchema, _n as RustApiSchema, _t as JAVA_LIBRARIES_VALUES, a as ANALYTICS_VALUES, an as RUST_API_VALUES, at as GO_WEB_FRAMEWORK_VALUES, b as BetterTStackConfigFileSchema, bn as RustCliSchema, bt as JAVA_WEB_FRAMEWORK_VALUES, c as API_VALUES, cn as RUST_CLI_VALUES, ct as GoCliSchema, d as AddInputSchema, dn as RUST_LIBRARIES_VALUES, dt as GoWebFrameworkSchema, en as PythonTaskQueueSchema, er as VERSION_CHANNEL_VALUES, et as GO_API_VALUES, f as AddonsSchema, fn as RUST_LOGGING_VALUES, ft as I18N_VALUES, g as AstroIntegrationSchema, gn as RuntimeSchema, gt as JAVA_BUILD_TOOL_VALUES, h as AnimationSchema, hn as RealtimeSchema, ht as JAVA_AUTH_VALUES, i as AI_VALUES, in as RUNTIME_VALUES, ir as WebDeploySchema, it as GO_ORM_VALUES, j as DATABASE_VALUES, jn as SHADCN_COLOR_THEME_VALUES, jt as OBSERVABILITY_VALUES, k as CreateInputSchema, kn as SHADCN_BASE_COLOR_VALUES, kt as LOGGING_VALUES, l as ASTRO_INTEGRATION_VALUES, ln as RUST_ERROR_HANDLING_VALUES, lt as GoLoggingSchema, m as AnalyticsSchema, mn as RUST_WEB_FRAMEWORK_VALUES, mt as InitResultSchema, n as AISchema, nn as PythonWebFrameworkSchema, nr as VersionChannelSchema, nt as GO_CLI_VALUES, o as ANIMATION_VALUES, on as RUST_AUTH_VALUES, ot as GoApiSchema, p as AiDocsSchema, pn as RUST_ORM_VALUES, pt as I18nSchema, q as FORMS_VALUES, qn as TEMPLATE_VALUES, qt as ProjectConfigSchema, r as AI_DOCS_VALUES, rn as REALTIME_VALUES, rr as WEB_DEPLOY_VALUES, rt as GO_LOGGING_VALUES, s as APISchema, sn as RUST_CACHING_VALUES, st as GoAuthSchema, t as ADDONS_VALUES, tn as PythonValidationSchema, tr as ValidationSchema, tt as GO_AUTH_VALUES, u as AUTH_VALUES, un as RUST_FRONTEND_VALUES, ut as GoOrmSchema, v as BACKEND_VALUES, vn as RustAuthSchema, vt as JAVA_ORM_VALUES, w as CMSSchema, wn as RustLoggingSchema, wt as JavaLibrariesSchema, x as BetterTStackConfigSchema, xn as RustErrorHandlingSchema, xt as JOB_QUEUE_VALUES, y as BackendSchema, yn as RustCachingSchema, yt as JAVA_TESTING_LIBRARIES_VALUES, z as EXAMPLES_VALUES, zn as ShadcnBaseColorSchema, zt as PYTHON_GRAPHQL_VALUES } from "./schemas-Bg3JFNO5.mjs";
|
|
2
|
+
import "./types.mjs";
|
|
3
|
+
import { t as createCliDefaultProjectConfigBase } from "./defaults-aGwVXJh5.mjs";
|
|
2
4
|
|
|
3
5
|
//#region src/capabilities.ts
|
|
4
6
|
const CAPABILITY_DEFINITIONS = { auth: [
|
|
@@ -260,7 +262,14 @@ const CATEGORY_ORDER = [
|
|
|
260
262
|
"goOrm",
|
|
261
263
|
"goApi",
|
|
262
264
|
"goCli",
|
|
263
|
-
"goLogging"
|
|
265
|
+
"goLogging",
|
|
266
|
+
"goAuth",
|
|
267
|
+
"javaWebFramework",
|
|
268
|
+
"javaBuildTool",
|
|
269
|
+
"javaOrm",
|
|
270
|
+
"javaAuth",
|
|
271
|
+
"javaLibraries",
|
|
272
|
+
"javaTestingLibraries"
|
|
264
273
|
];
|
|
265
274
|
const DEFAULT_RUNTIME = "bun";
|
|
266
275
|
function validateProjectName(name) {
|
|
@@ -319,7 +328,8 @@ const getCategoryDisplayName = (categoryKey) => {
|
|
|
319
328
|
rustLibraries: "Rust Core Libraries",
|
|
320
329
|
rustLogging: "Rust Logging",
|
|
321
330
|
rustErrorHandling: "Rust Error Handling",
|
|
322
|
-
rustCaching: "Rust Caching"
|
|
331
|
+
rustCaching: "Rust Caching",
|
|
332
|
+
rustAuth: "Rust Auth"
|
|
323
333
|
};
|
|
324
334
|
const pythonCategoryNames = {
|
|
325
335
|
pythonWebFramework: "Python Web Framework",
|
|
@@ -336,11 +346,21 @@ const getCategoryDisplayName = (categoryKey) => {
|
|
|
336
346
|
goOrm: "Go ORM / Database",
|
|
337
347
|
goApi: "Go API Layer",
|
|
338
348
|
goCli: "Go CLI Tools",
|
|
339
|
-
goLogging: "Go Logging"
|
|
349
|
+
goLogging: "Go Logging",
|
|
350
|
+
goAuth: "Go Auth"
|
|
351
|
+
};
|
|
352
|
+
const javaCategoryNames = {
|
|
353
|
+
javaWebFramework: "Java Web Framework",
|
|
354
|
+
javaBuildTool: "Java Build Tool",
|
|
355
|
+
javaOrm: "Java ORM / Database",
|
|
356
|
+
javaAuth: "Java Auth",
|
|
357
|
+
javaLibraries: "Java Libraries",
|
|
358
|
+
javaTestingLibraries: "Java Testing Libraries"
|
|
340
359
|
};
|
|
341
360
|
if (rustCategoryNames[categoryKey]) return rustCategoryNames[categoryKey];
|
|
342
361
|
if (pythonCategoryNames[categoryKey]) return pythonCategoryNames[categoryKey];
|
|
343
362
|
if (goCategoryNames[categoryKey]) return goCategoryNames[categoryKey];
|
|
363
|
+
if (javaCategoryNames[categoryKey]) return javaCategoryNames[categoryKey];
|
|
344
364
|
const tsCategoryNames = { i18n: "Internationalization (i18n)" };
|
|
345
365
|
if (tsCategoryNames[categoryKey]) return tsCategoryNames[categoryKey];
|
|
346
366
|
const result = categoryKey.replace(/([A-Z])/g, " $1");
|
|
@@ -1027,6 +1047,52 @@ const analyzeStackCompatibility = (stack) => {
|
|
|
1027
1047
|
});
|
|
1028
1048
|
}
|
|
1029
1049
|
}
|
|
1050
|
+
if (nextStack.ecosystem === "java") {
|
|
1051
|
+
if (nextStack.javaBuildTool === "none") {
|
|
1052
|
+
if (nextStack.javaWebFramework !== "none") {
|
|
1053
|
+
nextStack.javaWebFramework = "none";
|
|
1054
|
+
changed = true;
|
|
1055
|
+
changes.push({
|
|
1056
|
+
category: "javaBuildTool",
|
|
1057
|
+
message: "Java web framework set to 'None' (source-only Java does not use a framework)"
|
|
1058
|
+
});
|
|
1059
|
+
}
|
|
1060
|
+
if (nextStack.javaTestingLibraries.some((library) => library !== "none")) {
|
|
1061
|
+
nextStack.javaTestingLibraries = [];
|
|
1062
|
+
changed = true;
|
|
1063
|
+
changes.push({
|
|
1064
|
+
category: "javaBuildTool",
|
|
1065
|
+
message: "Java testing libraries cleared (a build tool is required for test dependencies)"
|
|
1066
|
+
});
|
|
1067
|
+
}
|
|
1068
|
+
}
|
|
1069
|
+
if (nextStack.javaWebFramework !== "spring-boot" || nextStack.javaBuildTool === "none") {
|
|
1070
|
+
if (nextStack.javaOrm !== "none") {
|
|
1071
|
+
nextStack.javaOrm = "none";
|
|
1072
|
+
changed = true;
|
|
1073
|
+
changes.push({
|
|
1074
|
+
category: "javaWebFramework",
|
|
1075
|
+
message: "Java ORM set to 'None' (current scaffold only supports it with Spring Boot)"
|
|
1076
|
+
});
|
|
1077
|
+
}
|
|
1078
|
+
if (nextStack.javaAuth !== "none") {
|
|
1079
|
+
nextStack.javaAuth = "none";
|
|
1080
|
+
changed = true;
|
|
1081
|
+
changes.push({
|
|
1082
|
+
category: "javaWebFramework",
|
|
1083
|
+
message: "Java auth set to 'None' (current scaffold only supports it with Spring Boot)"
|
|
1084
|
+
});
|
|
1085
|
+
}
|
|
1086
|
+
if (nextStack.javaLibraries.some((library) => library !== "none")) {
|
|
1087
|
+
nextStack.javaLibraries = [];
|
|
1088
|
+
changed = true;
|
|
1089
|
+
changes.push({
|
|
1090
|
+
category: "javaWebFramework",
|
|
1091
|
+
message: "Java libraries cleared (Spring libraries require Spring Boot)"
|
|
1092
|
+
});
|
|
1093
|
+
}
|
|
1094
|
+
}
|
|
1095
|
+
}
|
|
1030
1096
|
if (nextStack.webDeploy !== "none" && !nextStack.webFrontend.some((f) => f !== "none")) {
|
|
1031
1097
|
nextStack.webDeploy = "none";
|
|
1032
1098
|
changed = true;
|
|
@@ -1389,6 +1455,34 @@ const getDisabledReason = (currentStack, category, optionId) => {
|
|
|
1389
1455
|
if (!currentStack.webFrontend.includes("next")) return "next-intl requires Next.js";
|
|
1390
1456
|
}
|
|
1391
1457
|
}
|
|
1458
|
+
if (category === "javaWebFramework") {
|
|
1459
|
+
if (optionId === "spring-boot" && currentStack.javaBuildTool === "none") return "Spring Boot requires Maven or Gradle";
|
|
1460
|
+
}
|
|
1461
|
+
if (category === "javaBuildTool") {
|
|
1462
|
+
if (optionId === "none") {
|
|
1463
|
+
if (currentStack.javaWebFramework === "spring-boot") return "Spring Boot requires Maven or Gradle";
|
|
1464
|
+
if (currentStack.javaOrm !== "none") return "Java ORM support requires Maven or Gradle";
|
|
1465
|
+
if (currentStack.javaAuth !== "none") return "Java auth support requires Maven or Gradle";
|
|
1466
|
+
if (currentStack.javaLibraries.some((library) => library !== "none")) return "Java libraries require Maven or Gradle";
|
|
1467
|
+
if (currentStack.javaTestingLibraries.some((library) => library !== "none")) return "Java testing libraries require Maven or Gradle";
|
|
1468
|
+
}
|
|
1469
|
+
}
|
|
1470
|
+
if (category === "javaOrm") {
|
|
1471
|
+
if (optionId !== "none" && currentStack.javaWebFramework !== "spring-boot") return "Java ORM support currently requires Spring Boot";
|
|
1472
|
+
if (optionId !== "none" && currentStack.javaBuildTool === "none") return "Java ORM support requires Maven or Gradle";
|
|
1473
|
+
}
|
|
1474
|
+
if (category === "javaAuth") {
|
|
1475
|
+
if (optionId !== "none" && currentStack.javaWebFramework !== "spring-boot") return "Java auth support currently requires Spring Boot";
|
|
1476
|
+
if (optionId !== "none" && currentStack.javaBuildTool === "none") return "Java auth support requires Maven or Gradle";
|
|
1477
|
+
}
|
|
1478
|
+
if (category === "javaLibraries") {
|
|
1479
|
+
if (optionId !== "none" && currentStack.javaWebFramework !== "spring-boot") return "Spring libraries currently require Spring Boot in the Java scaffold";
|
|
1480
|
+
if (optionId !== "none" && currentStack.javaBuildTool === "none") return "Java libraries require Maven or Gradle";
|
|
1481
|
+
if (optionId === "flyway" && currentStack.javaOrm !== "spring-data-jpa") return "Flyway currently requires Spring Data JPA in the Java scaffold";
|
|
1482
|
+
}
|
|
1483
|
+
if (category === "javaTestingLibraries") {
|
|
1484
|
+
if (optionId !== "none" && currentStack.javaBuildTool === "none") return "Java testing libraries require Maven or Gradle";
|
|
1485
|
+
}
|
|
1392
1486
|
return null;
|
|
1393
1487
|
};
|
|
1394
1488
|
const isOptionCompatible = (currentStack, category, optionId) => {
|
|
@@ -1777,7 +1871,7 @@ function isFrontendAllowedWithBackend(frontend, backend, auth) {
|
|
|
1777
1871
|
if (backend === "convex" && frontend === "redwood") return false;
|
|
1778
1872
|
if (backend === "convex" && frontend === "fresh") return false;
|
|
1779
1873
|
if (frontend === "qwik" && backend && backend !== "none") return false;
|
|
1780
|
-
if (frontend === "angular" && backend
|
|
1874
|
+
if (frontend === "angular" && backend === "self") return false;
|
|
1781
1875
|
if (frontend === "redwood" && backend && backend !== "none") return false;
|
|
1782
1876
|
if (frontend === "fresh" && backend && backend !== "none") return false;
|
|
1783
1877
|
if (auth && auth !== "none") return getCapabilityDisabledReason("auth", {
|
|
@@ -1916,7 +2010,11 @@ function evaluateCompatibility(input) {
|
|
|
1916
2010
|
["forms", input.forms],
|
|
1917
2011
|
["stateManagement", input.stateManagement],
|
|
1918
2012
|
["animation", input.animation],
|
|
1919
|
-
["ai", input.aiSdk]
|
|
2013
|
+
["ai", input.aiSdk],
|
|
2014
|
+
["javaWebFramework", input.javaWebFramework],
|
|
2015
|
+
["javaBuildTool", input.javaBuildTool],
|
|
2016
|
+
["javaOrm", input.javaOrm],
|
|
2017
|
+
["javaAuth", input.javaAuth]
|
|
1920
2018
|
];
|
|
1921
2019
|
for (const [category, optionId] of scalarChecks) {
|
|
1922
2020
|
const reason = getDisabledReason(input, category, optionId);
|
|
@@ -1949,6 +2047,24 @@ function evaluateCompatibility(input) {
|
|
|
1949
2047
|
optionId: addon
|
|
1950
2048
|
});
|
|
1951
2049
|
}
|
|
2050
|
+
for (const javaLibrary of input.javaLibraries) {
|
|
2051
|
+
const reason = getDisabledReason(input, "javaLibraries", javaLibrary);
|
|
2052
|
+
if (reason) issues.push({
|
|
2053
|
+
code: "INCOMPATIBLE_JAVA_LIBRARY",
|
|
2054
|
+
message: reason,
|
|
2055
|
+
category: "javaLibraries",
|
|
2056
|
+
optionId: javaLibrary
|
|
2057
|
+
});
|
|
2058
|
+
}
|
|
2059
|
+
for (const testingLibrary of input.javaTestingLibraries) {
|
|
2060
|
+
const reason = getDisabledReason(input, "javaTestingLibraries", testingLibrary);
|
|
2061
|
+
if (reason) issues.push({
|
|
2062
|
+
code: "INCOMPATIBLE_JAVA_TESTING_LIBRARY",
|
|
2063
|
+
message: reason,
|
|
2064
|
+
category: "javaTestingLibraries",
|
|
2065
|
+
optionId: testingLibrary
|
|
2066
|
+
});
|
|
2067
|
+
}
|
|
1952
2068
|
return { issues };
|
|
1953
2069
|
}
|
|
1954
2070
|
|
|
@@ -2030,7 +2146,11 @@ const MULTI_SELECT_CATEGORIES = new Set([
|
|
|
2030
2146
|
"documentation",
|
|
2031
2147
|
"appPlatforms",
|
|
2032
2148
|
"examples",
|
|
2033
|
-
"aiDocs"
|
|
2149
|
+
"aiDocs",
|
|
2150
|
+
"rustLibraries",
|
|
2151
|
+
"pythonAi",
|
|
2152
|
+
"javaLibraries",
|
|
2153
|
+
"javaTestingLibraries"
|
|
2034
2154
|
]);
|
|
2035
2155
|
const CATEGORY_VALUE_IDS = {
|
|
2036
2156
|
api: API_VALUES,
|
|
@@ -2094,6 +2214,7 @@ const CATEGORY_VALUE_IDS = {
|
|
|
2094
2214
|
rustLogging: RUST_LOGGING_VALUES,
|
|
2095
2215
|
rustErrorHandling: RUST_ERROR_HANDLING_VALUES,
|
|
2096
2216
|
rustCaching: RUST_CACHING_VALUES,
|
|
2217
|
+
rustAuth: RUST_AUTH_VALUES,
|
|
2097
2218
|
pythonWebFramework: PYTHON_WEB_FRAMEWORK_VALUES,
|
|
2098
2219
|
pythonOrm: PYTHON_ORM_VALUES,
|
|
2099
2220
|
pythonValidation: PYTHON_VALIDATION_VALUES,
|
|
@@ -2106,7 +2227,14 @@ const CATEGORY_VALUE_IDS = {
|
|
|
2106
2227
|
goOrm: GO_ORM_VALUES,
|
|
2107
2228
|
goApi: GO_API_VALUES,
|
|
2108
2229
|
goCli: GO_CLI_VALUES,
|
|
2109
|
-
goLogging: GO_LOGGING_VALUES
|
|
2230
|
+
goLogging: GO_LOGGING_VALUES,
|
|
2231
|
+
goAuth: GO_AUTH_VALUES,
|
|
2232
|
+
javaWebFramework: JAVA_WEB_FRAMEWORK_VALUES,
|
|
2233
|
+
javaBuildTool: JAVA_BUILD_TOOL_VALUES,
|
|
2234
|
+
javaOrm: JAVA_ORM_VALUES,
|
|
2235
|
+
javaAuth: JAVA_AUTH_VALUES,
|
|
2236
|
+
javaLibraries: JAVA_LIBRARIES_VALUES,
|
|
2237
|
+
javaTestingLibraries: JAVA_TESTING_LIBRARIES_VALUES
|
|
2110
2238
|
};
|
|
2111
2239
|
const EXACT_LABEL_OVERRIDES = {
|
|
2112
2240
|
api: {
|
|
@@ -2388,6 +2516,7 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2388
2516
|
moka: "Moka",
|
|
2389
2517
|
redis: "Redis"
|
|
2390
2518
|
},
|
|
2519
|
+
rustAuth: { oauth2: "OAuth2" },
|
|
2391
2520
|
pythonWebFramework: {
|
|
2392
2521
|
fastapi: "FastAPI",
|
|
2393
2522
|
django: "Django",
|
|
@@ -2396,7 +2525,8 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2396
2525
|
},
|
|
2397
2526
|
pythonOrm: {
|
|
2398
2527
|
sqlalchemy: "SQLAlchemy",
|
|
2399
|
-
sqlmodel: "SQLModel"
|
|
2528
|
+
sqlmodel: "SQLModel",
|
|
2529
|
+
"tortoise-orm": "Tortoise ORM"
|
|
2400
2530
|
},
|
|
2401
2531
|
pythonValidation: { pydantic: "Pydantic" },
|
|
2402
2532
|
pythonAi: {
|
|
@@ -2434,6 +2564,23 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2434
2564
|
zap: "Zap",
|
|
2435
2565
|
zerolog: "Zerolog",
|
|
2436
2566
|
slog: "slog"
|
|
2567
|
+
},
|
|
2568
|
+
goAuth: {
|
|
2569
|
+
casbin: "Casbin",
|
|
2570
|
+
jwt: "golang-jwt"
|
|
2571
|
+
},
|
|
2572
|
+
javaWebFramework: { "spring-boot": "Spring Boot" },
|
|
2573
|
+
javaBuildTool: { maven: "Maven" },
|
|
2574
|
+
javaOrm: { "spring-data-jpa": "Spring Data JPA" },
|
|
2575
|
+
javaAuth: { "spring-security": "Spring Security" },
|
|
2576
|
+
javaLibraries: {
|
|
2577
|
+
"spring-actuator": "Spring Boot Actuator",
|
|
2578
|
+
"spring-validation": "Spring Validation"
|
|
2579
|
+
},
|
|
2580
|
+
javaTestingLibraries: {
|
|
2581
|
+
junit5: "JUnit 5",
|
|
2582
|
+
mockito: "Mockito",
|
|
2583
|
+
testcontainers: "Testcontainers"
|
|
2437
2584
|
}
|
|
2438
2585
|
};
|
|
2439
2586
|
const OPTION_ALIASES = {
|
|
@@ -2555,6 +2702,7 @@ const OPTION_CATEGORY_METADATA = {
|
|
|
2555
2702
|
rustLogging: buildCategoryMetadata("rustLogging"),
|
|
2556
2703
|
rustErrorHandling: buildCategoryMetadata("rustErrorHandling"),
|
|
2557
2704
|
rustCaching: buildCategoryMetadata("rustCaching"),
|
|
2705
|
+
rustAuth: buildCategoryMetadata("rustAuth"),
|
|
2558
2706
|
pythonWebFramework: buildCategoryMetadata("pythonWebFramework"),
|
|
2559
2707
|
pythonOrm: buildCategoryMetadata("pythonOrm"),
|
|
2560
2708
|
pythonValidation: buildCategoryMetadata("pythonValidation"),
|
|
@@ -2567,7 +2715,14 @@ const OPTION_CATEGORY_METADATA = {
|
|
|
2567
2715
|
goOrm: buildCategoryMetadata("goOrm"),
|
|
2568
2716
|
goApi: buildCategoryMetadata("goApi"),
|
|
2569
2717
|
goCli: buildCategoryMetadata("goCli"),
|
|
2570
|
-
goLogging: buildCategoryMetadata("goLogging")
|
|
2718
|
+
goLogging: buildCategoryMetadata("goLogging"),
|
|
2719
|
+
goAuth: buildCategoryMetadata("goAuth"),
|
|
2720
|
+
javaWebFramework: buildCategoryMetadata("javaWebFramework"),
|
|
2721
|
+
javaBuildTool: buildCategoryMetadata("javaBuildTool"),
|
|
2722
|
+
javaOrm: buildCategoryMetadata("javaOrm"),
|
|
2723
|
+
javaAuth: buildCategoryMetadata("javaAuth"),
|
|
2724
|
+
javaLibraries: buildCategoryMetadata("javaLibraries"),
|
|
2725
|
+
javaTestingLibraries: buildCategoryMetadata("javaTestingLibraries")
|
|
2571
2726
|
};
|
|
2572
2727
|
const OPTION_LOOKUP = Object.fromEntries(Object.entries(OPTION_CATEGORY_METADATA).map(([category, metadata]) => [category, new Map(metadata.options.flatMap((option) => [[option.id.toLowerCase(), option.id], ...option.aliases.map((alias) => [alias.toLowerCase(), option.id])]))]));
|
|
2573
2728
|
function isMultiSelectCategory(category) {
|
|
@@ -2594,10 +2749,13 @@ const VITE_WEB_FRONTENDS = new Set([
|
|
|
2594
2749
|
"svelte",
|
|
2595
2750
|
"fresh"
|
|
2596
2751
|
]);
|
|
2752
|
+
const ASTRO_WEB_FRONTENDS = new Set(["astro"]);
|
|
2597
2753
|
function getLocalWebDevPort(frontend) {
|
|
2598
|
-
|
|
2754
|
+
if (frontend.some((entry) => VITE_WEB_FRONTENDS.has(entry))) return 5173;
|
|
2755
|
+
if (frontend.some((entry) => ASTRO_WEB_FRONTENDS.has(entry))) return 4321;
|
|
2756
|
+
return 3001;
|
|
2599
2757
|
}
|
|
2600
2758
|
|
|
2601
2759
|
//#endregion
|
|
2602
|
-
export { ADDONS_VALUES, AISchema, AI_DOCS_VALUES, AI_VALUES, ANALYTICS_VALUES, ANIMATION_VALUES, APISchema, API_VALUES, ASTRO_INTEGRATION_VALUES, AUTH_VALUES, AddInputSchema, AddonsSchema, AiDocsSchema, AnalyticsSchema, AnimationSchema, AstroIntegrationSchema, AuthSchema, BACKEND_VALUES, BackendSchema, BetterTStackConfigFileSchema, BetterTStackConfigSchema, CACHING_VALUES, CLIInputSchema, CMSSchema, CMS_VALUES, CSSFrameworkSchema, CSS_FRAMEWORK_VALUES, CachingSchema, CreateInputSchema, DATABASE_SETUP_VALUES, DATABASE_VALUES, DIRECTORY_CONFLICT_VALUES, DatabaseSchema, DatabaseSetupSchema, DirectoryConflictSchema, ECOSYSTEM_VALUES, EFFECT_VALUES, EMAIL_VALUES, EXAMPLES_VALUES, EcosystemSchema, EffectSchema, EmailSchema, ExamplesSchema, FEATURE_FLAGS_VALUES, FILE_STORAGE_VALUES, FILE_UPLOAD_VALUES, FORMS_VALUES, FRONTEND_VALUES, FeatureFlagsSchema, FileStorageSchema, FileUploadSchema, FormsSchema, FrontendSchema, GO_API_VALUES, GO_CLI_VALUES, GO_LOGGING_VALUES, GO_ORM_VALUES, GO_WEB_FRAMEWORK_VALUES, GoApiSchema, GoCliSchema, GoLoggingSchema, GoOrmSchema, GoWebFrameworkSchema, I18N_VALUES, I18nSchema, InitResultSchema, JOB_QUEUE_VALUES, JobQueueSchema, LOGGING_VALUES, LoggingSchema, OBSERVABILITY_VALUES, OPTION_CATEGORY_METADATA, ORMSchema, ORM_VALUES, ObservabilitySchema, PACKAGE_MANAGER_VALUES, PAYMENTS_VALUES, PYTHON_AI_VALUES, PYTHON_AUTH_VALUES, PYTHON_GRAPHQL_VALUES, PYTHON_ORM_VALUES, PYTHON_QUALITY_VALUES, PYTHON_TASK_QUEUE_VALUES, PYTHON_VALIDATION_VALUES, PYTHON_WEB_FRAMEWORK_VALUES, PackageManagerSchema, PaymentsSchema, ProjectConfigSchema, ProjectNameSchema, PythonAiSchema, PythonAuthSchema, PythonGraphqlSchema, PythonOrmSchema, PythonQualitySchema, PythonTaskQueueSchema, PythonValidationSchema, PythonWebFrameworkSchema, REALTIME_VALUES, RUNTIME_VALUES, RUST_API_VALUES, RUST_CACHING_VALUES, RUST_CLI_VALUES, RUST_ERROR_HANDLING_VALUES, RUST_FRONTEND_VALUES, RUST_LIBRARIES_VALUES, RUST_LOGGING_VALUES, RUST_ORM_VALUES, RUST_WEB_FRAMEWORK_VALUES, RealtimeSchema, RuntimeSchema, RustApiSchema, RustCachingSchema, RustCliSchema, RustErrorHandlingSchema, RustFrontendSchema, RustLibrariesSchema, RustLoggingSchema, RustOrmSchema, RustWebFrameworkSchema, SEARCH_VALUES, SERVER_DEPLOY_VALUES, SHADCN_BASE_COLOR_VALUES, SHADCN_BASE_VALUES, SHADCN_COLOR_THEME_VALUES, SHADCN_FONT_VALUES, SHADCN_ICON_LIBRARY_VALUES, SHADCN_RADIUS_VALUES, SHADCN_STYLE_VALUES, STATE_MANAGEMENT_VALUES, SearchSchema, ServerDeploySchema, ShadcnBaseColorSchema, ShadcnBaseSchema, ShadcnColorThemeSchema, ShadcnFontSchema, ShadcnIconLibrarySchema, ShadcnRadiusSchema, ShadcnStyleSchema, StateManagementSchema, TEMPLATE_VALUES, TESTING_VALUES, TemplateSchema, TestingSchema, UILibrarySchema, UI_LIBRARY_VALUES, VALIDATION_VALUES, VERSION_CHANNEL_VALUES, ValidationSchema, VersionChannelSchema, WEB_DEPLOY_VALUES, WebDeploySchema, allowedApisForFrontends, analyzeStackCompatibility, evaluateCompatibility, getCapabilityDefinitions, getCapabilityDisabledReason, getCategoryCliValues, getCategoryDisplayName, getCategoryOptionIds, getCompatibleAddons, getCompatibleCSSFrameworks, getCompatibleFormLibraries, getCompatibleUILibraries, getDisabledReason, getLocalWebDevPort, getOptionMetadata, getSupportedCapabilityOptions, hasPWACompatibleFrontend, hasTauriCompatibleFrontend, hasWebStyling, isExampleAIAllowed, isExampleChatSdkAllowed, isFrontendAllowedWithBackend, isMultiSelectCategory, isOptionCompatible, isWebFrontend, normalizeCapabilitySelection, normalizeOptionId, requiresChatSdkVercelAI, requiresChatSdkVercelAIForSelection, splitFrontends, validateAddonCompatibility, validateProjectName };
|
|
2760
|
+
export { ADDONS_VALUES, AISchema, AI_DOCS_VALUES, AI_VALUES, ANALYTICS_VALUES, ANIMATION_VALUES, APISchema, API_VALUES, ASTRO_INTEGRATION_VALUES, AUTH_VALUES, AddInputSchema, AddonsSchema, AiDocsSchema, AnalyticsSchema, AnimationSchema, AstroIntegrationSchema, AuthSchema, BACKEND_VALUES, BackendSchema, BetterTStackConfigFileSchema, BetterTStackConfigSchema, CACHING_VALUES, CLIInputSchema, CMSSchema, CMS_VALUES, CSSFrameworkSchema, CSS_FRAMEWORK_VALUES, CachingSchema, CreateInputSchema, DATABASE_SETUP_VALUES, DATABASE_VALUES, DIRECTORY_CONFLICT_VALUES, DatabaseSchema, DatabaseSetupSchema, DirectoryConflictSchema, ECOSYSTEM_VALUES, EFFECT_VALUES, EMAIL_VALUES, EXAMPLES_VALUES, EcosystemSchema, EffectSchema, EmailSchema, ExamplesSchema, FEATURE_FLAGS_VALUES, FILE_STORAGE_VALUES, FILE_UPLOAD_VALUES, FORMS_VALUES, FRONTEND_VALUES, FeatureFlagsSchema, FileStorageSchema, FileUploadSchema, FormsSchema, FrontendSchema, GO_API_VALUES, GO_AUTH_VALUES, GO_CLI_VALUES, GO_LOGGING_VALUES, GO_ORM_VALUES, GO_WEB_FRAMEWORK_VALUES, GoApiSchema, GoAuthSchema, GoCliSchema, GoLoggingSchema, GoOrmSchema, GoWebFrameworkSchema, I18N_VALUES, I18nSchema, InitResultSchema, JAVA_AUTH_VALUES, JAVA_BUILD_TOOL_VALUES, JAVA_LIBRARIES_VALUES, JAVA_ORM_VALUES, JAVA_TESTING_LIBRARIES_VALUES, JAVA_WEB_FRAMEWORK_VALUES, JOB_QUEUE_VALUES, JavaAuthSchema, JavaBuildToolSchema, JavaLibrariesSchema, JavaOrmSchema, JavaTestingLibrariesSchema, JavaWebFrameworkSchema, JobQueueSchema, LOGGING_VALUES, LoggingSchema, OBSERVABILITY_VALUES, OPTION_CATEGORY_METADATA, ORMSchema, ORM_VALUES, ObservabilitySchema, PACKAGE_MANAGER_VALUES, PAYMENTS_VALUES, PYTHON_AI_VALUES, PYTHON_AUTH_VALUES, PYTHON_GRAPHQL_VALUES, PYTHON_ORM_VALUES, PYTHON_QUALITY_VALUES, PYTHON_TASK_QUEUE_VALUES, PYTHON_VALIDATION_VALUES, PYTHON_WEB_FRAMEWORK_VALUES, PackageManagerSchema, PaymentsSchema, ProjectConfigSchema, ProjectNameSchema, PythonAiSchema, PythonAuthSchema, PythonGraphqlSchema, PythonOrmSchema, PythonQualitySchema, PythonTaskQueueSchema, PythonValidationSchema, PythonWebFrameworkSchema, REALTIME_VALUES, RUNTIME_VALUES, RUST_API_VALUES, RUST_AUTH_VALUES, RUST_CACHING_VALUES, RUST_CLI_VALUES, RUST_ERROR_HANDLING_VALUES, RUST_FRONTEND_VALUES, RUST_LIBRARIES_VALUES, RUST_LOGGING_VALUES, RUST_ORM_VALUES, RUST_WEB_FRAMEWORK_VALUES, RealtimeSchema, RuntimeSchema, RustApiSchema, RustAuthSchema, RustCachingSchema, RustCliSchema, RustErrorHandlingSchema, RustFrontendSchema, RustLibrariesSchema, RustLoggingSchema, RustOrmSchema, RustWebFrameworkSchema, SEARCH_VALUES, SERVER_DEPLOY_VALUES, SHADCN_BASE_COLOR_VALUES, SHADCN_BASE_VALUES, SHADCN_COLOR_THEME_VALUES, SHADCN_FONT_VALUES, SHADCN_ICON_LIBRARY_VALUES, SHADCN_RADIUS_VALUES, SHADCN_STYLE_VALUES, STATE_MANAGEMENT_VALUES, SearchSchema, ServerDeploySchema, ShadcnBaseColorSchema, ShadcnBaseSchema, ShadcnColorThemeSchema, ShadcnFontSchema, ShadcnIconLibrarySchema, ShadcnRadiusSchema, ShadcnStyleSchema, StateManagementSchema, TEMPLATE_VALUES, TESTING_VALUES, TemplateSchema, TestingSchema, UILibrarySchema, UI_LIBRARY_VALUES, VALIDATION_VALUES, VERSION_CHANNEL_VALUES, ValidationSchema, VersionChannelSchema, WEB_DEPLOY_VALUES, WebDeploySchema, allowedApisForFrontends, analyzeStackCompatibility, createCliDefaultProjectConfigBase, evaluateCompatibility, getCapabilityDefinitions, getCapabilityDisabledReason, getCategoryCliValues, getCategoryDisplayName, getCategoryOptionIds, getCompatibleAddons, getCompatibleCSSFrameworks, getCompatibleFormLibraries, getCompatibleUILibraries, getDisabledReason, getLocalWebDevPort, getOptionMetadata, getSupportedCapabilityOptions, hasPWACompatibleFrontend, hasTauriCompatibleFrontend, hasWebStyling, isExampleAIAllowed, isExampleChatSdkAllowed, isFrontendAllowedWithBackend, isMultiSelectCategory, isOptionCompatible, isWebFrontend, normalizeCapabilitySelection, normalizeOptionId, requiresChatSdkVercelAI, requiresChatSdkVercelAIForSelection, splitFrontends, validateAddonCompatibility, validateProjectName };
|
|
2603
2761
|
//# sourceMappingURL=index.mjs.map
|