@donotdev/cli 0.0.6 → 0.0.8
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/README.md +3 -18
- package/dependencies-matrix.json +64 -121
- package/dist/bin/commands/build.js +173 -161
- package/dist/bin/commands/bump.js +181 -156
- package/dist/bin/commands/cacheout.js +188 -171
- package/dist/bin/commands/create-app.js +213 -156
- package/dist/bin/commands/create-project.js +183 -154
- package/dist/bin/commands/deploy.js +491 -477
- package/dist/bin/commands/dev.js +176 -160
- package/dist/bin/commands/emu.js +181 -165
- package/dist/bin/commands/format.js +191 -174
- package/dist/bin/commands/lint.js +191 -171
- package/dist/bin/commands/preview.js +177 -161
- package/dist/bin/commands/sync-secrets.js +172 -158
- package/dist/bin/commands/wai.d.ts +11 -0
- package/dist/bin/commands/wai.d.ts.map +1 -0
- package/dist/bin/commands/wai.js +12 -0
- package/dist/bin/commands/wai.js.map +1 -0
- package/dist/bin/dndev.js +24 -24
- package/dist/bin/donotdev.js +24 -24
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +661 -669
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/templates/app-demo/src/config/app.ts.example +12 -0
- package/templates/app-next/src/config/app.ts.example +75 -48
- package/templates/app-vite/index.html.example +71 -37
- package/templates/app-vite/src/config/app.ts.example +75 -47
- package/templates/app-vite/src/pages/FormPageExample.tsx.example +152 -0
- package/templates/app-vite/src/pages/HomePage.tsx.example +81 -134
- package/templates/app-vite/src/pages/ListPageExample.tsx.example +88 -0
- package/templates/functions-firebase/build.mjs.example +8 -1
- package/templates/functions-firebase/functions-firebase/build.mjs.example +8 -1
- package/templates/functions-firebase/functions-firebase/src/index.ts.example +19 -25
- package/templates/functions-firebase/functions.config.js.example +35 -0
- package/templates/root-consumer/entities/ExampleEntity.ts.example +223 -0
- package/templates/root-consumer/entities/demo.ts.example +576 -0
- package/templates/root-consumer/entities/index.ts.example +15 -0
- package/templates/root-consumer/eslint.config.js.example +2 -80
- package/templates/root-consumer/guides/{AGENT_START_HERE.md.example → dndev/AGENT_START_HERE.md.example} +22 -0
- package/templates/root-consumer/guides/dndev/COMPONENTS_CRUD.md.example +231 -0
- package/templates/root-consumer/guides/{SETUP_AUTH.md.example → dndev/SETUP_AUTH.md.example} +30 -0
- package/templates/root-consumer/guides/dndev/SETUP_CRUD.md.example +539 -0
- package/templates/root-consumer/guides/dndev/SETUP_FUNCTIONS.md.example +116 -0
- package/templates/root-consumer/guides/{SETUP_I18N.md.example → dndev/SETUP_I18N.md.example} +46 -0
- package/templates/root-consumer/guides/wai-way/WAI_WAY_CLI.md.example +404 -0
- package/templates/root-consumer/guides/wai-way/agents/architect.md.example +78 -0
- package/templates/root-consumer/guides/wai-way/agents/builder.md.example +87 -0
- package/templates/root-consumer/guides/wai-way/agents/extractor.md.example +325 -0
- package/templates/root-consumer/guides/wai-way/agents/polisher.md.example +100 -0
- package/templates/root-consumer/guides/wai-way/blueprints/0_brainstorm.md.example +281 -0
- package/templates/root-consumer/guides/wai-way/blueprints/1_scaffold.md.example +77 -0
- package/templates/root-consumer/guides/wai-way/blueprints/2_entities.md.example +104 -0
- package/templates/root-consumer/guides/wai-way/blueprints/3_compose.md.example +124 -0
- package/templates/root-consumer/guides/wai-way/blueprints/4_configure.md.example +165 -0
- package/templates/root-consumer/guides/wai-way/context_map.json.example +95 -0
- package/templates/root-consumer/guides/wai-way/entity_patterns.md.example +840 -0
- package/templates/root-consumer/guides/wai-way/page_patterns.md.example +686 -0
- package/templates/root-consumer/guides/wai-way/presets_guide.md.example +217 -0
- package/templates/root-consumer/guides/wai-way/spec_template.md.example +312 -0
- package/templates/functions-firebase/functions-firebase/src/crud/createEntity.ts.example +0 -19
- package/templates/functions-firebase/functions-firebase/src/crud/deleteEntity.ts.example +0 -14
- package/templates/functions-firebase/functions-firebase/src/crud/getEntity.ts.example +0 -14
- package/templates/functions-firebase/functions-firebase/src/crud/index.ts.example +0 -12
- package/templates/functions-firebase/functions-firebase/src/crud/listEntities.ts.example +0 -14
- package/templates/functions-firebase/functions-firebase/src/crud/updateEntity.ts.example +0 -14
- package/templates/root-consumer/guides/COMPONENTS_CRUD.md.example +0 -70
- package/templates/root-consumer/guides/SETUP_CRUD.md.example +0 -1244
- package/templates/root-consumer/guides/SETUP_FUNCTIONS.md.example +0 -114
- /package/templates/root-consumer/guides/{COMPONENTS_ADV.md.example → dndev/COMPONENTS_ADV.md.example} +0 -0
- /package/templates/root-consumer/guides/{COMPONENTS_ATOMIC.md.example → dndev/COMPONENTS_ATOMIC.md.example} +0 -0
- /package/templates/root-consumer/guides/{COMPONENTS_UI.md.example → dndev/COMPONENTS_UI.md.example} +0 -0
- /package/templates/root-consumer/guides/{ENV_SETUP.md.example → dndev/ENV_SETUP.md.example} +0 -0
- /package/templates/root-consumer/guides/{INDEX.md.example → dndev/INDEX.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_APP_CONFIG.md.example → dndev/SETUP_APP_CONFIG.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_BILLING.md.example → dndev/SETUP_BILLING.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_LAYOUTS.md.example → dndev/SETUP_LAYOUTS.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_OAUTH.md.example → dndev/SETUP_OAUTH.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_PAGES.md.example → dndev/SETUP_PAGES.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_PWA.md.example → dndev/SETUP_PWA.md.example} +0 -0
- /package/templates/root-consumer/guides/{SETUP_THEMES.md.example → dndev/SETUP_THEMES.md.example} +0 -0
- /package/templates/root-consumer/guides/{USE_ROUTING.md.example → dndev/USE_ROUTING.md.example} +0 -0
- /package/templates/root-consumer/guides/{advanced → dndev/advanced}/APP_CHECK.md.example +0 -0
- /package/templates/root-consumer/guides/{advanced → dndev/advanced}/COOKIE_REFERENCE.md.example +0 -0
- /package/templates/root-consumer/guides/{advanced → dndev/advanced}/EMULATORS.md.example +0 -0
- /package/templates/root-consumer/guides/{advanced → dndev/advanced}/VERSION_CONTROL.md.example +0 -0
|
@@ -822,6 +822,7 @@ __export(cli_output_exports, {
|
|
|
822
822
|
success: () => success,
|
|
823
823
|
warn: () => warn
|
|
824
824
|
});
|
|
825
|
+
import "node:os";
|
|
825
826
|
function supportsColor() {
|
|
826
827
|
if (process.env.NO_COLOR) return false;
|
|
827
828
|
if (process.platform === "win32") {
|
|
@@ -1013,155 +1014,6 @@ var init_cli_output = __esm({
|
|
|
1013
1014
|
}
|
|
1014
1015
|
});
|
|
1015
1016
|
|
|
1016
|
-
// packages/core/config/constants.js
|
|
1017
|
-
function getPatternsFor(type, repoRoot = null) {
|
|
1018
|
-
const patterns = SCAN_PATTERNS[type];
|
|
1019
|
-
if (!patterns) {
|
|
1020
|
-
throw new Error(`Unknown pattern type: ${type}`);
|
|
1021
|
-
}
|
|
1022
|
-
if (repoRoot && patterns.framework) {
|
|
1023
|
-
return {
|
|
1024
|
-
...patterns,
|
|
1025
|
-
framework: patterns.framework.map((pattern) => `${repoRoot}/${pattern}`)
|
|
1026
|
-
};
|
|
1027
|
-
}
|
|
1028
|
-
return patterns;
|
|
1029
|
-
}
|
|
1030
|
-
function getGlobOptionsFor(type) {
|
|
1031
|
-
return GLOB_OPTIONS[type] || GLOB_OPTIONS.base;
|
|
1032
|
-
}
|
|
1033
|
-
var I18N_PATHS, SCAN_PATTERNS, GLOB_OPTIONS;
|
|
1034
|
-
var init_constants = __esm({
|
|
1035
|
-
"packages/core/config/constants.js"() {
|
|
1036
|
-
"use strict";
|
|
1037
|
-
init_utils();
|
|
1038
|
-
I18N_PATHS = {
|
|
1039
|
-
// Monorepo source structure (locales at root, not in src/)
|
|
1040
|
-
SOURCE_ROOT: "packages/core/i18n",
|
|
1041
|
-
SOURCE_LOCALES: "packages/core/i18n/locales",
|
|
1042
|
-
SOURCE_EAGER: "packages/core/i18n/locales/eager",
|
|
1043
|
-
SOURCE_LAZY: "packages/core/i18n/locales/lazy",
|
|
1044
|
-
// Published structure (same as source - no flattening needed)
|
|
1045
|
-
PUBLISHED_ROOT: "i18n",
|
|
1046
|
-
PUBLISHED_LOCALES: "i18n/locales",
|
|
1047
|
-
PUBLISHED_EAGER: "i18n/locales/eager",
|
|
1048
|
-
PUBLISHED_LAZY: "i18n/locales/lazy"
|
|
1049
|
-
};
|
|
1050
|
-
SCAN_PATTERNS = {
|
|
1051
|
-
routes: {
|
|
1052
|
-
consumer: ["src/**/*Page.tsx", "src/pages/**/*Page.tsx"],
|
|
1053
|
-
exclude: [
|
|
1054
|
-
"**/node_modules/**",
|
|
1055
|
-
"**/dist/**",
|
|
1056
|
-
"**/build/**",
|
|
1057
|
-
"**/*.test.tsx",
|
|
1058
|
-
"**/*.stories.tsx"
|
|
1059
|
-
],
|
|
1060
|
-
extensions: [".tsx"]
|
|
1061
|
-
},
|
|
1062
|
-
css: {
|
|
1063
|
-
consumer: ["src/**/*.css"],
|
|
1064
|
-
themes: ["src/**/*.css"],
|
|
1065
|
-
extensions: [".css", ".scss", ".sass"],
|
|
1066
|
-
framework: [
|
|
1067
|
-
"packages/ui/src/**/*.css",
|
|
1068
|
-
"packages/core/components/src/**/*.css",
|
|
1069
|
-
"packages/core/templates/src/**/*.css"
|
|
1070
|
-
]
|
|
1071
|
-
},
|
|
1072
|
-
i18n: {
|
|
1073
|
-
eager: ["src/locales/*_*.json"],
|
|
1074
|
-
lazy: ["src/**/locales/*_*.json", "!src/locales/*_*.json"],
|
|
1075
|
-
framework: {
|
|
1076
|
-
eager: [`${I18N_PATHS.SOURCE_EAGER}/*_*.json`],
|
|
1077
|
-
lazy: [`${I18N_PATHS.SOURCE_LAZY}/*_*.json`]
|
|
1078
|
-
},
|
|
1079
|
-
extensions: [".json"]
|
|
1080
|
-
},
|
|
1081
|
-
assets: {
|
|
1082
|
-
consumer: ["public/**/*"],
|
|
1083
|
-
fallback: ["manifest.json"],
|
|
1084
|
-
modern: [
|
|
1085
|
-
"logo.svg",
|
|
1086
|
-
"favicon.svg",
|
|
1087
|
-
"apple-touch-icon.png",
|
|
1088
|
-
"android-chrome-192x192.png",
|
|
1089
|
-
"android-chrome-512x512.png"
|
|
1090
|
-
],
|
|
1091
|
-
patterns: [
|
|
1092
|
-
"favicon.svg",
|
|
1093
|
-
"favicon.ico",
|
|
1094
|
-
"favicon-*.png",
|
|
1095
|
-
"logo.svg",
|
|
1096
|
-
"logo.png",
|
|
1097
|
-
"logo.webp",
|
|
1098
|
-
"logo.avif",
|
|
1099
|
-
"apple-touch-icon*.png",
|
|
1100
|
-
"android-chrome-*.png",
|
|
1101
|
-
"manifest.json"
|
|
1102
|
-
],
|
|
1103
|
-
fonts: ["fonts/**/*.woff2", "fonts/**/*.woff", "fonts/**/*.ttf"],
|
|
1104
|
-
framework: ["packages/ui/assets/**/*"]
|
|
1105
|
-
},
|
|
1106
|
-
pwa: {
|
|
1107
|
-
consumer: [
|
|
1108
|
-
"public/manifest.json",
|
|
1109
|
-
"public/service-worker.js",
|
|
1110
|
-
"public/sw.js",
|
|
1111
|
-
"public/icon-192x192.png",
|
|
1112
|
-
"public/icon-512x512.png",
|
|
1113
|
-
"public/favicon.ico",
|
|
1114
|
-
"public/favicon.svg",
|
|
1115
|
-
"public/apple-touch-icon.png",
|
|
1116
|
-
"public/logo.svg"
|
|
1117
|
-
],
|
|
1118
|
-
exclude: ["**/node_modules/**", "**/dist/**", "**/build/**"],
|
|
1119
|
-
extensions: [".json", ".js", ".png", ".svg", ".ico"],
|
|
1120
|
-
framework: ["packages/ui/assets/**/*"]
|
|
1121
|
-
},
|
|
1122
|
-
globalIgnore: [
|
|
1123
|
-
"**/node_modules/**",
|
|
1124
|
-
"**/dist/**",
|
|
1125
|
-
"**/build/**",
|
|
1126
|
-
"**/.git/**",
|
|
1127
|
-
"**/coverage/**",
|
|
1128
|
-
"**/test/**"
|
|
1129
|
-
]
|
|
1130
|
-
};
|
|
1131
|
-
GLOB_OPTIONS = {
|
|
1132
|
-
base: {
|
|
1133
|
-
absolute: true,
|
|
1134
|
-
onlyFiles: true,
|
|
1135
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
1136
|
-
},
|
|
1137
|
-
css: {
|
|
1138
|
-
absolute: true,
|
|
1139
|
-
onlyFiles: true,
|
|
1140
|
-
ignore: [...SCAN_PATTERNS.globalIgnore, "**/*.test.css"]
|
|
1141
|
-
},
|
|
1142
|
-
routes: {
|
|
1143
|
-
absolute: true,
|
|
1144
|
-
onlyFiles: true,
|
|
1145
|
-
ignore: [
|
|
1146
|
-
...SCAN_PATTERNS.globalIgnore,
|
|
1147
|
-
"**/*.test.tsx",
|
|
1148
|
-
"**/*.stories.tsx"
|
|
1149
|
-
]
|
|
1150
|
-
},
|
|
1151
|
-
i18n: {
|
|
1152
|
-
absolute: true,
|
|
1153
|
-
onlyFiles: true,
|
|
1154
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
1155
|
-
},
|
|
1156
|
-
assets: {
|
|
1157
|
-
absolute: true,
|
|
1158
|
-
onlyFiles: true,
|
|
1159
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
1160
|
-
}
|
|
1161
|
-
};
|
|
1162
|
-
}
|
|
1163
|
-
});
|
|
1164
|
-
|
|
1165
1017
|
// node_modules/.bun/fast-glob@3.3.3/node_modules/fast-glob/out/utils/array.js
|
|
1166
1018
|
var require_array = __commonJS({
|
|
1167
1019
|
"node_modules/.bun/fast-glob@3.3.3/node_modules/fast-glob/out/utils/array.js"(exports) {
|
|
@@ -6746,7 +6598,167 @@ var require_out4 = __commonJS({
|
|
|
6746
6598
|
}
|
|
6747
6599
|
});
|
|
6748
6600
|
|
|
6601
|
+
// packages/core/config/constants.js
|
|
6602
|
+
function getPatternsFor(type, repoRoot = null) {
|
|
6603
|
+
const patterns = SCAN_PATTERNS[type];
|
|
6604
|
+
if (!patterns) {
|
|
6605
|
+
throw new Error(`Unknown pattern type: ${type}`);
|
|
6606
|
+
}
|
|
6607
|
+
if (repoRoot && patterns.framework) {
|
|
6608
|
+
return {
|
|
6609
|
+
...patterns,
|
|
6610
|
+
framework: patterns.framework.map((pattern) => `${repoRoot}/${pattern}`)
|
|
6611
|
+
};
|
|
6612
|
+
}
|
|
6613
|
+
return patterns;
|
|
6614
|
+
}
|
|
6615
|
+
function getGlobOptionsFor(type) {
|
|
6616
|
+
return GLOB_OPTIONS[type] || GLOB_OPTIONS.base;
|
|
6617
|
+
}
|
|
6618
|
+
var I18N_PATHS, SCAN_PATTERNS, GLOB_OPTIONS;
|
|
6619
|
+
var init_constants = __esm({
|
|
6620
|
+
"packages/core/config/constants.js"() {
|
|
6621
|
+
"use strict";
|
|
6622
|
+
init_utils();
|
|
6623
|
+
I18N_PATHS = {
|
|
6624
|
+
// Monorepo source structure (locales at root, not in src/)
|
|
6625
|
+
SOURCE_ROOT: "packages/core/i18n",
|
|
6626
|
+
SOURCE_LOCALES: "packages/core/i18n/locales",
|
|
6627
|
+
SOURCE_EAGER: "packages/core/i18n/locales/eager",
|
|
6628
|
+
SOURCE_LAZY: "packages/core/i18n/locales/lazy",
|
|
6629
|
+
// Published structure (same as source - no flattening needed)
|
|
6630
|
+
PUBLISHED_ROOT: "i18n",
|
|
6631
|
+
PUBLISHED_LOCALES: "i18n/locales",
|
|
6632
|
+
PUBLISHED_EAGER: "i18n/locales/eager",
|
|
6633
|
+
PUBLISHED_LAZY: "i18n/locales/lazy"
|
|
6634
|
+
};
|
|
6635
|
+
SCAN_PATTERNS = {
|
|
6636
|
+
routes: {
|
|
6637
|
+
consumer: ["src/**/*Page.tsx", "src/pages/**/*Page.tsx"],
|
|
6638
|
+
exclude: [
|
|
6639
|
+
"**/node_modules/**",
|
|
6640
|
+
"**/dist/**",
|
|
6641
|
+
"**/build/**",
|
|
6642
|
+
"**/*.test.tsx",
|
|
6643
|
+
"**/*.stories.tsx"
|
|
6644
|
+
],
|
|
6645
|
+
extensions: [".tsx"]
|
|
6646
|
+
},
|
|
6647
|
+
css: {
|
|
6648
|
+
consumer: ["src/**/*.css"],
|
|
6649
|
+
themes: ["src/**/*.css"],
|
|
6650
|
+
extensions: [".css", ".scss", ".sass"],
|
|
6651
|
+
framework: [
|
|
6652
|
+
"packages/ui/src/**/*.css",
|
|
6653
|
+
"packages/core/components/src/**/*.css",
|
|
6654
|
+
"packages/core/templates/src/**/*.css"
|
|
6655
|
+
]
|
|
6656
|
+
},
|
|
6657
|
+
i18n: {
|
|
6658
|
+
eager: ["src/locales/*_*.json"],
|
|
6659
|
+
lazy: [
|
|
6660
|
+
"src/**/locales/*_*.json",
|
|
6661
|
+
"!src/locales/*_*.json",
|
|
6662
|
+
// Auto-detect shared entity translations in monorepos (if exists, use it; if not, no problem)
|
|
6663
|
+
"../../entities/locales/*_*.json"
|
|
6664
|
+
],
|
|
6665
|
+
// Additional paths from workspace packages (e.g., shared entities)
|
|
6666
|
+
// Consumers can still configure via i18n.additionalPaths in dndev/vite config for custom paths
|
|
6667
|
+
// Example: ['../../packages/shared/locales/*_*.json']
|
|
6668
|
+
additional: [],
|
|
6669
|
+
framework: {
|
|
6670
|
+
eager: [`${I18N_PATHS.SOURCE_EAGER}/*_*.json`],
|
|
6671
|
+
lazy: [`${I18N_PATHS.SOURCE_LAZY}/*_*.json`]
|
|
6672
|
+
},
|
|
6673
|
+
extensions: [".json"]
|
|
6674
|
+
},
|
|
6675
|
+
assets: {
|
|
6676
|
+
consumer: ["public/**/*"],
|
|
6677
|
+
fallback: ["manifest.json"],
|
|
6678
|
+
modern: [
|
|
6679
|
+
"logo.svg",
|
|
6680
|
+
"favicon.svg",
|
|
6681
|
+
"apple-touch-icon.png",
|
|
6682
|
+
"android-chrome-192x192.png",
|
|
6683
|
+
"android-chrome-512x512.png"
|
|
6684
|
+
],
|
|
6685
|
+
patterns: [
|
|
6686
|
+
"favicon.svg",
|
|
6687
|
+
"favicon.ico",
|
|
6688
|
+
"favicon-*.png",
|
|
6689
|
+
"logo.svg",
|
|
6690
|
+
"logo.png",
|
|
6691
|
+
"logo.webp",
|
|
6692
|
+
"logo.avif",
|
|
6693
|
+
"apple-touch-icon*.png",
|
|
6694
|
+
"android-chrome-*.png",
|
|
6695
|
+
"manifest.json"
|
|
6696
|
+
],
|
|
6697
|
+
fonts: ["fonts/**/*.woff2", "fonts/**/*.woff", "fonts/**/*.ttf"],
|
|
6698
|
+
framework: ["packages/ui/assets/**/*"]
|
|
6699
|
+
},
|
|
6700
|
+
pwa: {
|
|
6701
|
+
consumer: [
|
|
6702
|
+
"public/manifest.json",
|
|
6703
|
+
"public/service-worker.js",
|
|
6704
|
+
"public/sw.js",
|
|
6705
|
+
"public/icon-192x192.png",
|
|
6706
|
+
"public/icon-512x512.png",
|
|
6707
|
+
"public/favicon.ico",
|
|
6708
|
+
"public/favicon.svg",
|
|
6709
|
+
"public/apple-touch-icon.png",
|
|
6710
|
+
"public/logo.svg"
|
|
6711
|
+
],
|
|
6712
|
+
exclude: ["**/node_modules/**", "**/dist/**", "**/build/**"],
|
|
6713
|
+
extensions: [".json", ".js", ".png", ".svg", ".ico"],
|
|
6714
|
+
framework: ["packages/ui/assets/**/*"]
|
|
6715
|
+
},
|
|
6716
|
+
globalIgnore: [
|
|
6717
|
+
"**/node_modules/**",
|
|
6718
|
+
"**/dist/**",
|
|
6719
|
+
"**/build/**",
|
|
6720
|
+
"**/.git/**",
|
|
6721
|
+
"**/coverage/**",
|
|
6722
|
+
"**/test/**"
|
|
6723
|
+
]
|
|
6724
|
+
};
|
|
6725
|
+
GLOB_OPTIONS = {
|
|
6726
|
+
base: {
|
|
6727
|
+
absolute: true,
|
|
6728
|
+
onlyFiles: true,
|
|
6729
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6730
|
+
},
|
|
6731
|
+
css: {
|
|
6732
|
+
absolute: true,
|
|
6733
|
+
onlyFiles: true,
|
|
6734
|
+
ignore: [...SCAN_PATTERNS.globalIgnore, "**/*.test.css"]
|
|
6735
|
+
},
|
|
6736
|
+
routes: {
|
|
6737
|
+
absolute: true,
|
|
6738
|
+
onlyFiles: true,
|
|
6739
|
+
ignore: [
|
|
6740
|
+
...SCAN_PATTERNS.globalIgnore,
|
|
6741
|
+
"**/*.test.tsx",
|
|
6742
|
+
"**/*.stories.tsx"
|
|
6743
|
+
]
|
|
6744
|
+
},
|
|
6745
|
+
i18n: {
|
|
6746
|
+
absolute: true,
|
|
6747
|
+
onlyFiles: true,
|
|
6748
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6749
|
+
},
|
|
6750
|
+
assets: {
|
|
6751
|
+
absolute: true,
|
|
6752
|
+
onlyFiles: true,
|
|
6753
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6754
|
+
}
|
|
6755
|
+
};
|
|
6756
|
+
}
|
|
6757
|
+
});
|
|
6758
|
+
|
|
6749
6759
|
// packages/core/config/utils/PathResolver.ts
|
|
6760
|
+
import * as fs from "node:fs";
|
|
6761
|
+
import "node:fs";
|
|
6750
6762
|
import { createRequire } from "node:module";
|
|
6751
6763
|
import {
|
|
6752
6764
|
resolve,
|
|
@@ -6758,7 +6770,6 @@ import {
|
|
|
6758
6770
|
extname
|
|
6759
6771
|
} from "node:path";
|
|
6760
6772
|
import { fileURLToPath } from "node:url";
|
|
6761
|
-
import * as fs from "node:fs";
|
|
6762
6773
|
function safeExecuteAsync(fn, message) {
|
|
6763
6774
|
return fn().catch((error2) => {
|
|
6764
6775
|
throw new Error(
|
|
@@ -6771,8 +6782,8 @@ var init_PathResolver = __esm({
|
|
|
6771
6782
|
"packages/core/config/utils/PathResolver.ts"() {
|
|
6772
6783
|
"use strict";
|
|
6773
6784
|
init_utils();
|
|
6774
|
-
init_constants();
|
|
6775
6785
|
import_fast_glob = __toESM(require_out4(), 1);
|
|
6786
|
+
init_constants();
|
|
6776
6787
|
constants = {
|
|
6777
6788
|
getGlobOptionsFor: getGlobOptionsFor || void 0,
|
|
6778
6789
|
SCAN_PATTERNS: SCAN_PATTERNS || void 0,
|
|
@@ -8214,11 +8225,12 @@ var init_pathResolver = __esm({
|
|
|
8214
8225
|
});
|
|
8215
8226
|
|
|
8216
8227
|
// packages/tooling/src/bundler/utils.ts
|
|
8228
|
+
import { Buffer as Buffer2 } from "node:buffer";
|
|
8229
|
+
import { readFileSync as readFileSync2, writeFileSync as writeFileSync2, mkdirSync as mkdirSync2 } from "node:fs";
|
|
8217
8230
|
import { createRequire as createRequire3 } from "node:module";
|
|
8218
|
-
import { fileURLToPath as fileURLToPath3 } from "node:url";
|
|
8219
8231
|
import { dirname as dirname3, resolve as resolve3 } from "node:path";
|
|
8220
|
-
import { Buffer as Buffer2 } from "node:buffer";
|
|
8221
8232
|
import process from "node:process";
|
|
8233
|
+
import { fileURLToPath as fileURLToPath3 } from "node:url";
|
|
8222
8234
|
var require2, __filename, __dirname;
|
|
8223
8235
|
var init_utils = __esm({
|
|
8224
8236
|
"packages/tooling/src/bundler/utils.ts"() {
|
|
@@ -8294,8 +8306,8 @@ async function askForSelection(message, choices, defaultValue = 0) {
|
|
|
8294
8306
|
|
|
8295
8307
|
// packages/tooling/src/utils/create-utils.ts
|
|
8296
8308
|
init_utils();
|
|
8297
|
-
init_pathResolver();
|
|
8298
8309
|
init_cli_output();
|
|
8310
|
+
init_pathResolver();
|
|
8299
8311
|
async function isTextFile(filePath) {
|
|
8300
8312
|
const binaryExtensions = [
|
|
8301
8313
|
".png",
|
|
@@ -8763,6 +8775,23 @@ function generatePackageJson(templateName, mode, options = {}) {
|
|
|
8763
8775
|
}
|
|
8764
8776
|
}
|
|
8765
8777
|
}
|
|
8778
|
+
if (mode === "published") {
|
|
8779
|
+
const overrides = {};
|
|
8780
|
+
for (const [groupName, group] of Object.entries(matrix.groups || {})) {
|
|
8781
|
+
if (groupName.startsWith("@donotdev/")) {
|
|
8782
|
+
const version = group.packages?.[groupName];
|
|
8783
|
+
if (version) {
|
|
8784
|
+
overrides[groupName] = version.replace(/^\^/, "");
|
|
8785
|
+
}
|
|
8786
|
+
}
|
|
8787
|
+
}
|
|
8788
|
+
if (matrix.overrides) {
|
|
8789
|
+
Object.assign(overrides, matrix.overrides);
|
|
8790
|
+
}
|
|
8791
|
+
if (Object.keys(overrides).length > 0) {
|
|
8792
|
+
result.overrides = overrides;
|
|
8793
|
+
}
|
|
8794
|
+
}
|
|
8766
8795
|
return result;
|
|
8767
8796
|
}
|
|
8768
8797
|
|
|
@@ -8997,9 +9026,37 @@ Happy coding!`,
|
|
|
8997
9026
|
);
|
|
8998
9027
|
}
|
|
8999
9028
|
}
|
|
9000
|
-
async function main() {
|
|
9029
|
+
async function main(options) {
|
|
9001
9030
|
try {
|
|
9002
|
-
|
|
9031
|
+
const hasCliOptions = options?.name || options?.builder !== void 0;
|
|
9032
|
+
if (hasCliOptions && options?.name) {
|
|
9033
|
+
const appName = options.name;
|
|
9034
|
+
const builder = options.builder || "vite";
|
|
9035
|
+
const includeFunctions = options.functions ?? false;
|
|
9036
|
+
if (!isValidFileName(appName)) {
|
|
9037
|
+
throw new Error(
|
|
9038
|
+
`Invalid app name "${appName}". Use only letters, numbers, dashes (-), and underscores (_).`
|
|
9039
|
+
);
|
|
9040
|
+
}
|
|
9041
|
+
if (isReservedAppName(appName)) {
|
|
9042
|
+
throw new Error(
|
|
9043
|
+
`App name "${appName}" is reserved for framework demos. Please choose a different name.`
|
|
9044
|
+
);
|
|
9045
|
+
}
|
|
9046
|
+
const appConfig = {
|
|
9047
|
+
template: builder === "next" ? "nextjs" : "vite",
|
|
9048
|
+
needsBackend: includeFunctions,
|
|
9049
|
+
backendPlatform: includeFunctions ? "firebase" : void 0,
|
|
9050
|
+
needsCRUD: true,
|
|
9051
|
+
selectedEntities: [],
|
|
9052
|
+
userAuth: "social",
|
|
9053
|
+
billing: true,
|
|
9054
|
+
features: []
|
|
9055
|
+
};
|
|
9056
|
+
await createApp(appName, appConfig);
|
|
9057
|
+
} else {
|
|
9058
|
+
await createApp();
|
|
9059
|
+
}
|
|
9003
9060
|
} catch (error2) {
|
|
9004
9061
|
log.error("\n\u274C Error creating app:", error2);
|
|
9005
9062
|
throw error2;
|