@better-fullstack/types 1.5.4 → 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 +31 -87
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +251 -24
- package/dist/index.mjs.map +1 -1
- package/dist/json-schema.d.mts +657 -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-C0f82atI.d.mts → schemas-B_I1Oeyt.d.mts} +546 -13
- package/dist/schemas-B_I1Oeyt.d.mts.map +1 -0
- package/dist/{schemas-PlcPX3a0.mjs → schemas-Bg3JFNO5.mjs} +119 -5
- 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-C0f82atI.d.mts.map +0 -1
- package/dist/schemas-PlcPX3a0.mjs.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: [
|
|
@@ -227,6 +229,7 @@ const CATEGORY_ORDER = [
|
|
|
227
229
|
"realtime",
|
|
228
230
|
"jobQueue",
|
|
229
231
|
"caching",
|
|
232
|
+
"i18n",
|
|
230
233
|
"search",
|
|
231
234
|
"fileStorage",
|
|
232
235
|
"animation",
|
|
@@ -251,13 +254,22 @@ const CATEGORY_ORDER = [
|
|
|
251
254
|
"pythonOrm",
|
|
252
255
|
"pythonValidation",
|
|
253
256
|
"pythonAi",
|
|
257
|
+
"pythonAuth",
|
|
254
258
|
"pythonTaskQueue",
|
|
259
|
+
"pythonGraphql",
|
|
255
260
|
"pythonQuality",
|
|
256
261
|
"goWebFramework",
|
|
257
262
|
"goOrm",
|
|
258
263
|
"goApi",
|
|
259
264
|
"goCli",
|
|
260
|
-
"goLogging"
|
|
265
|
+
"goLogging",
|
|
266
|
+
"goAuth",
|
|
267
|
+
"javaWebFramework",
|
|
268
|
+
"javaBuildTool",
|
|
269
|
+
"javaOrm",
|
|
270
|
+
"javaAuth",
|
|
271
|
+
"javaLibraries",
|
|
272
|
+
"javaTestingLibraries"
|
|
261
273
|
];
|
|
262
274
|
const DEFAULT_RUNTIME = "bun";
|
|
263
275
|
function validateProjectName(name) {
|
|
@@ -314,14 +326,19 @@ const getCategoryDisplayName = (categoryKey) => {
|
|
|
314
326
|
rustApi: "Rust API Layer",
|
|
315
327
|
rustCli: "Rust CLI Tools",
|
|
316
328
|
rustLibraries: "Rust Core Libraries",
|
|
317
|
-
rustLogging: "Rust Logging"
|
|
329
|
+
rustLogging: "Rust Logging",
|
|
330
|
+
rustErrorHandling: "Rust Error Handling",
|
|
331
|
+
rustCaching: "Rust Caching",
|
|
332
|
+
rustAuth: "Rust Auth"
|
|
318
333
|
};
|
|
319
334
|
const pythonCategoryNames = {
|
|
320
335
|
pythonWebFramework: "Python Web Framework",
|
|
321
336
|
pythonOrm: "Python ORM / Database",
|
|
322
337
|
pythonValidation: "Python Validation",
|
|
323
338
|
pythonAi: "Python AI / ML",
|
|
339
|
+
pythonAuth: "Python Auth",
|
|
324
340
|
pythonTaskQueue: "Python Task Queue",
|
|
341
|
+
pythonGraphql: "Python GraphQL",
|
|
325
342
|
pythonQuality: "Python Code Quality"
|
|
326
343
|
};
|
|
327
344
|
const goCategoryNames = {
|
|
@@ -329,11 +346,23 @@ const getCategoryDisplayName = (categoryKey) => {
|
|
|
329
346
|
goOrm: "Go ORM / Database",
|
|
330
347
|
goApi: "Go API Layer",
|
|
331
348
|
goCli: "Go CLI Tools",
|
|
332
|
-
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"
|
|
333
359
|
};
|
|
334
360
|
if (rustCategoryNames[categoryKey]) return rustCategoryNames[categoryKey];
|
|
335
361
|
if (pythonCategoryNames[categoryKey]) return pythonCategoryNames[categoryKey];
|
|
336
362
|
if (goCategoryNames[categoryKey]) return goCategoryNames[categoryKey];
|
|
363
|
+
if (javaCategoryNames[categoryKey]) return javaCategoryNames[categoryKey];
|
|
364
|
+
const tsCategoryNames = { i18n: "Internationalization (i18n)" };
|
|
365
|
+
if (tsCategoryNames[categoryKey]) return tsCategoryNames[categoryKey];
|
|
337
366
|
const result = categoryKey.replace(/([A-Z])/g, " $1");
|
|
338
367
|
return result.charAt(0).toUpperCase() + result.slice(1);
|
|
339
368
|
};
|
|
@@ -1018,6 +1047,52 @@ const analyzeStackCompatibility = (stack) => {
|
|
|
1018
1047
|
});
|
|
1019
1048
|
}
|
|
1020
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
|
+
}
|
|
1021
1096
|
if (nextStack.webDeploy !== "none" && !nextStack.webFrontend.some((f) => f !== "none")) {
|
|
1022
1097
|
nextStack.webDeploy = "none";
|
|
1023
1098
|
changed = true;
|
|
@@ -1348,12 +1423,19 @@ const getDisabledReason = (currentStack, category, optionId) => {
|
|
|
1348
1423
|
}
|
|
1349
1424
|
if (category === "webDeploy" && optionId !== "none") {
|
|
1350
1425
|
if (!currentStack.webFrontend.some((f) => f !== "none")) return "Web deployment requires a web frontend";
|
|
1426
|
+
if (optionId === "vercel") {
|
|
1427
|
+
if (currentStack.webFrontend.some((f) => ["redwood", "fresh"].includes(f))) return "Vercel deployment is not available for Redwood/Fresh (they have their own deploy systems)";
|
|
1428
|
+
}
|
|
1351
1429
|
}
|
|
1352
1430
|
if (category === "serverDeploy") {
|
|
1353
1431
|
if (optionId === "cloudflare") {
|
|
1354
1432
|
if (currentStack.runtime !== "workers") return "In Better-Fullstack, Cloudflare server deploy currently requires Workers runtime";
|
|
1355
1433
|
if (currentStack.backend !== "hono") return "In Better-Fullstack, Cloudflare server deploy is currently supported only with Hono";
|
|
1356
1434
|
}
|
|
1435
|
+
if (optionId === "vercel") {
|
|
1436
|
+
if (["nestjs", "adonisjs"].includes(currentStack.backend)) return "Vercel serverless functions are incompatible with persistent-process backends like NestJS/AdonisJS. Use Fly.io or Railway instead.";
|
|
1437
|
+
if (currentStack.backend === "encore") return "Encore manages its own deployment infrastructure";
|
|
1438
|
+
}
|
|
1357
1439
|
if (optionId !== "none") {
|
|
1358
1440
|
if ([
|
|
1359
1441
|
"none",
|
|
@@ -1368,6 +1450,39 @@ const getDisabledReason = (currentStack, category, optionId) => {
|
|
|
1368
1450
|
}
|
|
1369
1451
|
if (optionId === "none" && currentStack.runtime === "workers") return "Workers requires server deployment";
|
|
1370
1452
|
}
|
|
1453
|
+
if (category === "i18n") {
|
|
1454
|
+
if (optionId === "next-intl") {
|
|
1455
|
+
if (!currentStack.webFrontend.includes("next")) return "next-intl requires Next.js";
|
|
1456
|
+
}
|
|
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
|
+
}
|
|
1371
1486
|
return null;
|
|
1372
1487
|
};
|
|
1373
1488
|
const isOptionCompatible = (currentStack, category, optionId) => {
|
|
@@ -1730,12 +1845,21 @@ function allowedApisForFrontends(frontends = [], astroIntegration) {
|
|
|
1730
1845
|
"orpc",
|
|
1731
1846
|
"ts-rest",
|
|
1732
1847
|
"garph",
|
|
1848
|
+
"graphql-yoga",
|
|
1733
1849
|
"none"
|
|
1734
1850
|
];
|
|
1735
|
-
if (includesQwik || includesAngular || includesRedwood || includesFresh) return ["none"];
|
|
1851
|
+
if (includesQwik || includesAngular || includesRedwood || includesFresh) return ["graphql-yoga", "none"];
|
|
1736
1852
|
const includesSolidStartApi = frontends.includes("solid-start");
|
|
1737
|
-
if (includesNuxt || includesSvelte || includesSolid || includesSolidStartApi) return [
|
|
1738
|
-
|
|
1853
|
+
if (includesNuxt || includesSvelte || includesSolid || includesSolidStartApi) return [
|
|
1854
|
+
"orpc",
|
|
1855
|
+
"graphql-yoga",
|
|
1856
|
+
"none"
|
|
1857
|
+
];
|
|
1858
|
+
if (includesAstro && astroIntegration && astroIntegration !== "react") return [
|
|
1859
|
+
"orpc",
|
|
1860
|
+
"graphql-yoga",
|
|
1861
|
+
"none"
|
|
1862
|
+
];
|
|
1739
1863
|
return base;
|
|
1740
1864
|
}
|
|
1741
1865
|
function isFrontendAllowedWithBackend(frontend, backend, auth) {
|
|
@@ -1747,7 +1871,7 @@ function isFrontendAllowedWithBackend(frontend, backend, auth) {
|
|
|
1747
1871
|
if (backend === "convex" && frontend === "redwood") return false;
|
|
1748
1872
|
if (backend === "convex" && frontend === "fresh") return false;
|
|
1749
1873
|
if (frontend === "qwik" && backend && backend !== "none") return false;
|
|
1750
|
-
if (frontend === "angular" && backend
|
|
1874
|
+
if (frontend === "angular" && backend === "self") return false;
|
|
1751
1875
|
if (frontend === "redwood" && backend && backend !== "none") return false;
|
|
1752
1876
|
if (frontend === "fresh" && backend && backend !== "none") return false;
|
|
1753
1877
|
if (auth && auth !== "none") return getCapabilityDisabledReason("auth", {
|
|
@@ -1886,7 +2010,11 @@ function evaluateCompatibility(input) {
|
|
|
1886
2010
|
["forms", input.forms],
|
|
1887
2011
|
["stateManagement", input.stateManagement],
|
|
1888
2012
|
["animation", input.animation],
|
|
1889
|
-
["ai", input.aiSdk]
|
|
2013
|
+
["ai", input.aiSdk],
|
|
2014
|
+
["javaWebFramework", input.javaWebFramework],
|
|
2015
|
+
["javaBuildTool", input.javaBuildTool],
|
|
2016
|
+
["javaOrm", input.javaOrm],
|
|
2017
|
+
["javaAuth", input.javaAuth]
|
|
1890
2018
|
];
|
|
1891
2019
|
for (const [category, optionId] of scalarChecks) {
|
|
1892
2020
|
const reason = getDisabledReason(input, category, optionId);
|
|
@@ -1919,6 +2047,24 @@ function evaluateCompatibility(input) {
|
|
|
1919
2047
|
optionId: addon
|
|
1920
2048
|
});
|
|
1921
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
|
+
}
|
|
1922
2068
|
return { issues };
|
|
1923
2069
|
}
|
|
1924
2070
|
|
|
@@ -2000,7 +2146,11 @@ const MULTI_SELECT_CATEGORIES = new Set([
|
|
|
2000
2146
|
"documentation",
|
|
2001
2147
|
"appPlatforms",
|
|
2002
2148
|
"examples",
|
|
2003
|
-
"aiDocs"
|
|
2149
|
+
"aiDocs",
|
|
2150
|
+
"rustLibraries",
|
|
2151
|
+
"pythonAi",
|
|
2152
|
+
"javaLibraries",
|
|
2153
|
+
"javaTestingLibraries"
|
|
2004
2154
|
]);
|
|
2005
2155
|
const CATEGORY_VALUE_IDS = {
|
|
2006
2156
|
api: API_VALUES,
|
|
@@ -2028,6 +2178,7 @@ const CATEGORY_VALUE_IDS = {
|
|
|
2028
2178
|
realtime: REALTIME_VALUES,
|
|
2029
2179
|
jobQueue: JOB_QUEUE_VALUES,
|
|
2030
2180
|
caching: CACHING_VALUES,
|
|
2181
|
+
i18n: I18N_VALUES,
|
|
2031
2182
|
search: SEARCH_VALUES,
|
|
2032
2183
|
fileStorage: FILE_STORAGE_VALUES,
|
|
2033
2184
|
animation: ANIMATION_VALUES,
|
|
@@ -2061,22 +2212,35 @@ const CATEGORY_VALUE_IDS = {
|
|
|
2061
2212
|
rustCli: RUST_CLI_VALUES,
|
|
2062
2213
|
rustLibraries: RUST_LIBRARIES_VALUES,
|
|
2063
2214
|
rustLogging: RUST_LOGGING_VALUES,
|
|
2215
|
+
rustErrorHandling: RUST_ERROR_HANDLING_VALUES,
|
|
2216
|
+
rustCaching: RUST_CACHING_VALUES,
|
|
2217
|
+
rustAuth: RUST_AUTH_VALUES,
|
|
2064
2218
|
pythonWebFramework: PYTHON_WEB_FRAMEWORK_VALUES,
|
|
2065
2219
|
pythonOrm: PYTHON_ORM_VALUES,
|
|
2066
2220
|
pythonValidation: PYTHON_VALIDATION_VALUES,
|
|
2067
2221
|
pythonAi: PYTHON_AI_VALUES,
|
|
2222
|
+
pythonAuth: PYTHON_AUTH_VALUES,
|
|
2068
2223
|
pythonTaskQueue: PYTHON_TASK_QUEUE_VALUES,
|
|
2224
|
+
pythonGraphql: PYTHON_GRAPHQL_VALUES,
|
|
2069
2225
|
pythonQuality: PYTHON_QUALITY_VALUES,
|
|
2070
2226
|
goWebFramework: GO_WEB_FRAMEWORK_VALUES,
|
|
2071
2227
|
goOrm: GO_ORM_VALUES,
|
|
2072
2228
|
goApi: GO_API_VALUES,
|
|
2073
2229
|
goCli: GO_CLI_VALUES,
|
|
2074
|
-
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
|
|
2075
2238
|
};
|
|
2076
2239
|
const EXACT_LABEL_OVERRIDES = {
|
|
2077
2240
|
api: {
|
|
2078
2241
|
trpc: "tRPC",
|
|
2079
|
-
orpc: "oRPC"
|
|
2242
|
+
orpc: "oRPC",
|
|
2243
|
+
"graphql-yoga": "GraphQL Yoga"
|
|
2080
2244
|
},
|
|
2081
2245
|
webFrontend: {
|
|
2082
2246
|
next: "Next.js",
|
|
@@ -2124,12 +2288,14 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2124
2288
|
webDeploy: {
|
|
2125
2289
|
cloudflare: "Cloudflare",
|
|
2126
2290
|
fly: "Fly.io",
|
|
2127
|
-
sst: "SST"
|
|
2291
|
+
sst: "SST",
|
|
2292
|
+
vercel: "Vercel"
|
|
2128
2293
|
},
|
|
2129
2294
|
serverDeploy: {
|
|
2130
2295
|
cloudflare: "Cloudflare",
|
|
2131
2296
|
fly: "Fly.io",
|
|
2132
|
-
sst: "SST"
|
|
2297
|
+
sst: "SST",
|
|
2298
|
+
vercel: "Vercel"
|
|
2133
2299
|
},
|
|
2134
2300
|
cms: { tinacms: "TinaCMS" },
|
|
2135
2301
|
auth: {},
|
|
@@ -2177,6 +2343,10 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2177
2343
|
bullmq: "BullMQ",
|
|
2178
2344
|
"trigger-dev": "Trigger.dev"
|
|
2179
2345
|
},
|
|
2346
|
+
i18n: {
|
|
2347
|
+
i18next: "i18next",
|
|
2348
|
+
"next-intl": "next-intl"
|
|
2349
|
+
},
|
|
2180
2350
|
search: {
|
|
2181
2351
|
meilisearch: "Meilisearch",
|
|
2182
2352
|
typesense: "Typesense",
|
|
@@ -2306,7 +2476,8 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2306
2476
|
shadcnRadius: { default: "Default" },
|
|
2307
2477
|
rustWebFramework: {
|
|
2308
2478
|
axum: "Axum",
|
|
2309
|
-
"actix-web": "Actix-web"
|
|
2479
|
+
"actix-web": "Actix-web",
|
|
2480
|
+
rocket: "Rocket"
|
|
2310
2481
|
},
|
|
2311
2482
|
rustFrontend: {
|
|
2312
2483
|
leptos: "Leptos",
|
|
@@ -2314,7 +2485,8 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2314
2485
|
},
|
|
2315
2486
|
rustOrm: {
|
|
2316
2487
|
"sea-orm": "SeaORM",
|
|
2317
|
-
sqlx: "SQLx"
|
|
2488
|
+
sqlx: "SQLx",
|
|
2489
|
+
diesel: "Diesel"
|
|
2318
2490
|
},
|
|
2319
2491
|
rustApi: {
|
|
2320
2492
|
"async-graphql": "async-graphql",
|
|
@@ -2336,14 +2508,25 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2336
2508
|
tracing: "Tracing",
|
|
2337
2509
|
"env-logger": "env_logger"
|
|
2338
2510
|
},
|
|
2511
|
+
rustErrorHandling: {
|
|
2512
|
+
"anyhow-thiserror": "anyhow + thiserror",
|
|
2513
|
+
eyre: "eyre + color-eyre"
|
|
2514
|
+
},
|
|
2515
|
+
rustCaching: {
|
|
2516
|
+
moka: "Moka",
|
|
2517
|
+
redis: "Redis"
|
|
2518
|
+
},
|
|
2519
|
+
rustAuth: { oauth2: "OAuth2" },
|
|
2339
2520
|
pythonWebFramework: {
|
|
2340
2521
|
fastapi: "FastAPI",
|
|
2341
2522
|
django: "Django",
|
|
2342
|
-
flask: "Flask"
|
|
2523
|
+
flask: "Flask",
|
|
2524
|
+
litestar: "Litestar"
|
|
2343
2525
|
},
|
|
2344
2526
|
pythonOrm: {
|
|
2345
2527
|
sqlalchemy: "SQLAlchemy",
|
|
2346
|
-
sqlmodel: "SQLModel"
|
|
2528
|
+
sqlmodel: "SQLModel",
|
|
2529
|
+
"tortoise-orm": "Tortoise ORM"
|
|
2347
2530
|
},
|
|
2348
2531
|
pythonValidation: { pydantic: "Pydantic" },
|
|
2349
2532
|
pythonAi: {
|
|
@@ -2354,23 +2537,51 @@ const EXACT_LABEL_OVERRIDES = {
|
|
|
2354
2537
|
langgraph: "LangGraph",
|
|
2355
2538
|
crewai: "CrewAI"
|
|
2356
2539
|
},
|
|
2540
|
+
pythonAuth: {
|
|
2541
|
+
authlib: "Authlib",
|
|
2542
|
+
jwt: "JWT (python-jose)"
|
|
2543
|
+
},
|
|
2357
2544
|
pythonTaskQueue: { celery: "Celery" },
|
|
2545
|
+
pythonGraphql: { strawberry: "Strawberry" },
|
|
2358
2546
|
pythonQuality: { ruff: "Ruff" },
|
|
2359
2547
|
goWebFramework: {
|
|
2360
2548
|
gin: "Gin",
|
|
2361
2549
|
echo: "Echo",
|
|
2362
|
-
fiber: "Fiber"
|
|
2550
|
+
fiber: "Fiber",
|
|
2551
|
+
chi: "Chi"
|
|
2363
2552
|
},
|
|
2364
2553
|
goOrm: {
|
|
2365
2554
|
gorm: "GORM",
|
|
2366
|
-
sqlc: "sqlc"
|
|
2555
|
+
sqlc: "sqlc",
|
|
2556
|
+
ent: "Ent"
|
|
2367
2557
|
},
|
|
2368
2558
|
goApi: { "grpc-go": "gRPC-Go" },
|
|
2369
2559
|
goCli: {
|
|
2370
2560
|
cobra: "Cobra",
|
|
2371
2561
|
bubbletea: "Bubble Tea"
|
|
2372
2562
|
},
|
|
2373
|
-
goLogging: {
|
|
2563
|
+
goLogging: {
|
|
2564
|
+
zap: "Zap",
|
|
2565
|
+
zerolog: "Zerolog",
|
|
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"
|
|
2584
|
+
}
|
|
2374
2585
|
};
|
|
2375
2586
|
const OPTION_ALIASES = {
|
|
2376
2587
|
webFrontend: { svelte: ["sveltekit"] },
|
|
@@ -2455,6 +2666,7 @@ const OPTION_CATEGORY_METADATA = {
|
|
|
2455
2666
|
realtime: buildCategoryMetadata("realtime"),
|
|
2456
2667
|
jobQueue: buildCategoryMetadata("jobQueue"),
|
|
2457
2668
|
caching: buildCategoryMetadata("caching"),
|
|
2669
|
+
i18n: buildCategoryMetadata("i18n"),
|
|
2458
2670
|
search: buildCategoryMetadata("search"),
|
|
2459
2671
|
fileStorage: buildCategoryMetadata("fileStorage"),
|
|
2460
2672
|
animation: buildCategoryMetadata("animation"),
|
|
@@ -2488,17 +2700,29 @@ const OPTION_CATEGORY_METADATA = {
|
|
|
2488
2700
|
rustCli: buildCategoryMetadata("rustCli"),
|
|
2489
2701
|
rustLibraries: buildCategoryMetadata("rustLibraries"),
|
|
2490
2702
|
rustLogging: buildCategoryMetadata("rustLogging"),
|
|
2703
|
+
rustErrorHandling: buildCategoryMetadata("rustErrorHandling"),
|
|
2704
|
+
rustCaching: buildCategoryMetadata("rustCaching"),
|
|
2705
|
+
rustAuth: buildCategoryMetadata("rustAuth"),
|
|
2491
2706
|
pythonWebFramework: buildCategoryMetadata("pythonWebFramework"),
|
|
2492
2707
|
pythonOrm: buildCategoryMetadata("pythonOrm"),
|
|
2493
2708
|
pythonValidation: buildCategoryMetadata("pythonValidation"),
|
|
2494
2709
|
pythonAi: buildCategoryMetadata("pythonAi"),
|
|
2710
|
+
pythonAuth: buildCategoryMetadata("pythonAuth"),
|
|
2495
2711
|
pythonTaskQueue: buildCategoryMetadata("pythonTaskQueue"),
|
|
2712
|
+
pythonGraphql: buildCategoryMetadata("pythonGraphql"),
|
|
2496
2713
|
pythonQuality: buildCategoryMetadata("pythonQuality"),
|
|
2497
2714
|
goWebFramework: buildCategoryMetadata("goWebFramework"),
|
|
2498
2715
|
goOrm: buildCategoryMetadata("goOrm"),
|
|
2499
2716
|
goApi: buildCategoryMetadata("goApi"),
|
|
2500
2717
|
goCli: buildCategoryMetadata("goCli"),
|
|
2501
|
-
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")
|
|
2502
2726
|
};
|
|
2503
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])]))]));
|
|
2504
2728
|
function isMultiSelectCategory(category) {
|
|
@@ -2525,10 +2749,13 @@ const VITE_WEB_FRONTENDS = new Set([
|
|
|
2525
2749
|
"svelte",
|
|
2526
2750
|
"fresh"
|
|
2527
2751
|
]);
|
|
2752
|
+
const ASTRO_WEB_FRONTENDS = new Set(["astro"]);
|
|
2528
2753
|
function getLocalWebDevPort(frontend) {
|
|
2529
|
-
|
|
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;
|
|
2530
2757
|
}
|
|
2531
2758
|
|
|
2532
2759
|
//#endregion
|
|
2533
|
-
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, 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_ORM_VALUES, PYTHON_QUALITY_VALUES, PYTHON_TASK_QUEUE_VALUES, PYTHON_VALIDATION_VALUES, PYTHON_WEB_FRAMEWORK_VALUES, PackageManagerSchema, PaymentsSchema, ProjectConfigSchema, ProjectNameSchema, PythonAiSchema, PythonOrmSchema, PythonQualitySchema, PythonTaskQueueSchema, PythonValidationSchema, PythonWebFrameworkSchema, REALTIME_VALUES, RUNTIME_VALUES, RUST_API_VALUES, RUST_CLI_VALUES, RUST_FRONTEND_VALUES, RUST_LIBRARIES_VALUES, RUST_LOGGING_VALUES, RUST_ORM_VALUES, RUST_WEB_FRAMEWORK_VALUES, RealtimeSchema, RuntimeSchema, RustApiSchema, RustCliSchema, 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 };
|
|
2534
2761
|
//# sourceMappingURL=index.mjs.map
|