@donotdev/cli 0.0.5 → 0.0.7
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/dependencies-matrix.json +76 -34
- package/dist/bin/commands/build.js +165 -161
- package/dist/bin/commands/bump.js +172 -160
- package/dist/bin/commands/cacheout.js +163 -157
- package/dist/bin/commands/create-app.js +205 -163
- package/dist/bin/commands/create-project.js +176 -161
- package/dist/bin/commands/deploy.js +480 -472
- package/dist/bin/commands/dev.js +164 -158
- package/dist/bin/commands/emu.js +164 -158
- package/dist/bin/commands/format.js +163 -157
- package/dist/bin/commands/lint.js +166 -157
- package/dist/bin/commands/make-admin.d.ts +11 -0
- package/dist/bin/commands/make-admin.d.ts.map +1 -0
- package/dist/bin/commands/make-admin.js +12 -0
- package/dist/bin/commands/make-admin.js.map +1 -0
- package/dist/bin/commands/preview.js +164 -158
- package/dist/bin/commands/sync-secrets.js +164 -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 -8
- package/dist/bin/donotdev.js +24 -8
- package/dist/index.js +557 -514
- package/package.json +1 -1
- package/templates/app-demo/index.html.example +4 -0
- package/templates/app-demo/src/App.tsx.example +28 -10
- package/templates/app-demo/src/config/app.ts.example +68 -0
- package/templates/app-next/src/app/ClientLayout.tsx.example +4 -3
- package/templates/app-next/src/app/layout.tsx.example +17 -25
- package/templates/app-next/src/config/app.ts.example +75 -48
- package/templates/app-next/src/globals.css.example +10 -7
- package/templates/app-next/src/locales/dndev_en.json.example +68 -0
- package/templates/app-next/src/pages/locales/example_en.json.example +5 -0
- package/templates/app-vite/index.html.example +71 -34
- package/templates/app-vite/src/config/app.ts.example +75 -47
- package/templates/app-vite/src/globals.css.example +14 -6
- package/templates/app-vite/src/locales/dndev_en.json.example +68 -0
- 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/README.md.example +25 -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/functions-firebase/tsconfig.json.example +3 -13
- package/templates/functions-vercel/tsconfig.json.example +1 -13
- package/templates/root-consumer/entities/ExampleEntity.ts.example +223 -0
- package/templates/root-consumer/entities/demo.ts.example +562 -0
- package/templates/root-consumer/entities/index.ts.example +15 -0
- package/templates/root-consumer/firebase.json.example +1 -1
- package/templates/root-consumer/guides/{AGENT_START_HERE.md.example → dndev/AGENT_START_HERE.md.example} +22 -0
- package/templates/root-consumer/guides/{COMPONENTS_ADV.md.example → dndev/COMPONENTS_ADV.md.example} +456 -360
- package/templates/root-consumer/guides/{COMPONENTS_ATOMIC.md.example → dndev/COMPONENTS_ATOMIC.md.example} +42 -0
- package/templates/root-consumer/guides/dndev/COMPONENTS_CRUD.md.example +231 -0
- package/templates/root-consumer/guides/{INDEX.md.example → dndev/INDEX.md.example} +3 -0
- package/templates/root-consumer/guides/{SETUP_APP_CONFIG.md.example → dndev/SETUP_APP_CONFIG.md.example} +5 -2
- package/templates/root-consumer/guides/{SETUP_AUTH.md.example → dndev/SETUP_AUTH.md.example} +30 -0
- package/templates/root-consumer/guides/{SETUP_BILLING.md.example → dndev/SETUP_BILLING.md.example} +44 -4
- package/templates/root-consumer/guides/dndev/SETUP_CRUD.md.example +473 -0
- package/templates/root-consumer/guides/dndev/SETUP_FUNCTIONS.md.example +116 -0
- package/templates/root-consumer/guides/{SETUP_PAGES.md.example → dndev/SETUP_PAGES.md.example} +17 -0
- package/templates/root-consumer/guides/dndev/SETUP_PWA.md.example +213 -0
- package/templates/root-consumer/guides/dndev/USE_ROUTING.md.example +503 -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/root-consumer/vercel.json.example +315 -20
- package/templates/app-demo/src/Routes.tsx.example +0 -20
- package/templates/app-vite/src/Routes.tsx.example +0 -16
- package/templates/app-vite/src/pages/locales/README.md.example +0 -1
- 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_FUNCTIONS.md.example +0 -62
- /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/{SETUP_I18N.md.example → dndev/SETUP_I18N.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_THEMES.md.example → dndev/SETUP_THEMES.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
|
@@ -789,155 +789,6 @@ var init_cli_output = __esm({
|
|
|
789
789
|
}
|
|
790
790
|
});
|
|
791
791
|
|
|
792
|
-
// packages/core/config/constants.js
|
|
793
|
-
function getPatternsFor(type, repoRoot = null) {
|
|
794
|
-
const patterns = SCAN_PATTERNS[type];
|
|
795
|
-
if (!patterns) {
|
|
796
|
-
throw new Error(`Unknown pattern type: ${type}`);
|
|
797
|
-
}
|
|
798
|
-
if (repoRoot && patterns.framework) {
|
|
799
|
-
return {
|
|
800
|
-
...patterns,
|
|
801
|
-
framework: patterns.framework.map((pattern) => `${repoRoot}/${pattern}`)
|
|
802
|
-
};
|
|
803
|
-
}
|
|
804
|
-
return patterns;
|
|
805
|
-
}
|
|
806
|
-
function getGlobOptionsFor(type) {
|
|
807
|
-
return GLOB_OPTIONS[type] || GLOB_OPTIONS.base;
|
|
808
|
-
}
|
|
809
|
-
var I18N_PATHS, SCAN_PATTERNS, GLOB_OPTIONS;
|
|
810
|
-
var init_constants = __esm({
|
|
811
|
-
"packages/core/config/constants.js"() {
|
|
812
|
-
"use strict";
|
|
813
|
-
init_utils();
|
|
814
|
-
I18N_PATHS = {
|
|
815
|
-
// Monorepo source structure (locales at root, not in src/)
|
|
816
|
-
SOURCE_ROOT: "packages/core/i18n",
|
|
817
|
-
SOURCE_LOCALES: "packages/core/i18n/locales",
|
|
818
|
-
SOURCE_EAGER: "packages/core/i18n/locales/eager",
|
|
819
|
-
SOURCE_LAZY: "packages/core/i18n/locales/lazy",
|
|
820
|
-
// Published structure (same as source - no flattening needed)
|
|
821
|
-
PUBLISHED_ROOT: "i18n",
|
|
822
|
-
PUBLISHED_LOCALES: "i18n/locales",
|
|
823
|
-
PUBLISHED_EAGER: "i18n/locales/eager",
|
|
824
|
-
PUBLISHED_LAZY: "i18n/locales/lazy"
|
|
825
|
-
};
|
|
826
|
-
SCAN_PATTERNS = {
|
|
827
|
-
routes: {
|
|
828
|
-
consumer: ["src/**/*Page.tsx", "src/pages/**/*Page.tsx"],
|
|
829
|
-
exclude: [
|
|
830
|
-
"**/node_modules/**",
|
|
831
|
-
"**/dist/**",
|
|
832
|
-
"**/build/**",
|
|
833
|
-
"**/*.test.tsx",
|
|
834
|
-
"**/*.stories.tsx"
|
|
835
|
-
],
|
|
836
|
-
extensions: [".tsx"]
|
|
837
|
-
},
|
|
838
|
-
css: {
|
|
839
|
-
consumer: ["src/**/*.css"],
|
|
840
|
-
themes: ["src/**/*.css"],
|
|
841
|
-
extensions: [".css", ".scss", ".sass"],
|
|
842
|
-
framework: [
|
|
843
|
-
"packages/ui/src/**/*.css",
|
|
844
|
-
"packages/core/components/src/**/*.css",
|
|
845
|
-
"packages/core/templates/src/**/*.css"
|
|
846
|
-
]
|
|
847
|
-
},
|
|
848
|
-
i18n: {
|
|
849
|
-
eager: ["src/locales/*_*.json"],
|
|
850
|
-
lazy: ["src/**/locales/*_*.json", "!src/locales/*_*.json"],
|
|
851
|
-
framework: {
|
|
852
|
-
eager: [`${I18N_PATHS.SOURCE_EAGER}/*_*.json`],
|
|
853
|
-
lazy: [`${I18N_PATHS.SOURCE_LAZY}/*_*.json`]
|
|
854
|
-
},
|
|
855
|
-
extensions: [".json"]
|
|
856
|
-
},
|
|
857
|
-
assets: {
|
|
858
|
-
consumer: ["public/**/*"],
|
|
859
|
-
fallback: ["manifest.json"],
|
|
860
|
-
modern: [
|
|
861
|
-
"logo.svg",
|
|
862
|
-
"favicon.svg",
|
|
863
|
-
"apple-touch-icon.png",
|
|
864
|
-
"android-chrome-192x192.png",
|
|
865
|
-
"android-chrome-512x512.png"
|
|
866
|
-
],
|
|
867
|
-
patterns: [
|
|
868
|
-
"favicon.svg",
|
|
869
|
-
"favicon.ico",
|
|
870
|
-
"favicon-*.png",
|
|
871
|
-
"logo.svg",
|
|
872
|
-
"logo.png",
|
|
873
|
-
"logo.webp",
|
|
874
|
-
"logo.avif",
|
|
875
|
-
"apple-touch-icon*.png",
|
|
876
|
-
"android-chrome-*.png",
|
|
877
|
-
"manifest.json"
|
|
878
|
-
],
|
|
879
|
-
fonts: ["fonts/**/*.woff2", "fonts/**/*.woff", "fonts/**/*.ttf"],
|
|
880
|
-
framework: ["packages/ui/assets/**/*"]
|
|
881
|
-
},
|
|
882
|
-
pwa: {
|
|
883
|
-
consumer: [
|
|
884
|
-
"public/manifest.json",
|
|
885
|
-
"public/service-worker.js",
|
|
886
|
-
"public/sw.js",
|
|
887
|
-
"public/icon-192x192.png",
|
|
888
|
-
"public/icon-512x512.png",
|
|
889
|
-
"public/favicon.ico",
|
|
890
|
-
"public/favicon.svg",
|
|
891
|
-
"public/apple-touch-icon.png",
|
|
892
|
-
"public/logo.svg"
|
|
893
|
-
],
|
|
894
|
-
exclude: ["**/node_modules/**", "**/dist/**", "**/build/**"],
|
|
895
|
-
extensions: [".json", ".js", ".png", ".svg", ".ico"],
|
|
896
|
-
framework: ["packages/ui/assets/**/*"]
|
|
897
|
-
},
|
|
898
|
-
globalIgnore: [
|
|
899
|
-
"**/node_modules/**",
|
|
900
|
-
"**/dist/**",
|
|
901
|
-
"**/build/**",
|
|
902
|
-
"**/.git/**",
|
|
903
|
-
"**/coverage/**",
|
|
904
|
-
"**/test/**"
|
|
905
|
-
]
|
|
906
|
-
};
|
|
907
|
-
GLOB_OPTIONS = {
|
|
908
|
-
base: {
|
|
909
|
-
absolute: true,
|
|
910
|
-
onlyFiles: true,
|
|
911
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
912
|
-
},
|
|
913
|
-
css: {
|
|
914
|
-
absolute: true,
|
|
915
|
-
onlyFiles: true,
|
|
916
|
-
ignore: [...SCAN_PATTERNS.globalIgnore, "**/*.test.css"]
|
|
917
|
-
},
|
|
918
|
-
routes: {
|
|
919
|
-
absolute: true,
|
|
920
|
-
onlyFiles: true,
|
|
921
|
-
ignore: [
|
|
922
|
-
...SCAN_PATTERNS.globalIgnore,
|
|
923
|
-
"**/*.test.tsx",
|
|
924
|
-
"**/*.stories.tsx"
|
|
925
|
-
]
|
|
926
|
-
},
|
|
927
|
-
i18n: {
|
|
928
|
-
absolute: true,
|
|
929
|
-
onlyFiles: true,
|
|
930
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
931
|
-
},
|
|
932
|
-
assets: {
|
|
933
|
-
absolute: true,
|
|
934
|
-
onlyFiles: true,
|
|
935
|
-
ignore: SCAN_PATTERNS.globalIgnore
|
|
936
|
-
}
|
|
937
|
-
};
|
|
938
|
-
}
|
|
939
|
-
});
|
|
940
|
-
|
|
941
792
|
// node_modules/.bun/fast-glob@3.3.3/node_modules/fast-glob/out/utils/array.js
|
|
942
793
|
var require_array = __commonJS({
|
|
943
794
|
"node_modules/.bun/fast-glob@3.3.3/node_modules/fast-glob/out/utils/array.js"(exports) {
|
|
@@ -6522,7 +6373,157 @@ var require_out4 = __commonJS({
|
|
|
6522
6373
|
}
|
|
6523
6374
|
});
|
|
6524
6375
|
|
|
6376
|
+
// packages/core/config/constants.js
|
|
6377
|
+
function getPatternsFor(type, repoRoot = null) {
|
|
6378
|
+
const patterns = SCAN_PATTERNS[type];
|
|
6379
|
+
if (!patterns) {
|
|
6380
|
+
throw new Error(`Unknown pattern type: ${type}`);
|
|
6381
|
+
}
|
|
6382
|
+
if (repoRoot && patterns.framework) {
|
|
6383
|
+
return {
|
|
6384
|
+
...patterns,
|
|
6385
|
+
framework: patterns.framework.map((pattern) => `${repoRoot}/${pattern}`)
|
|
6386
|
+
};
|
|
6387
|
+
}
|
|
6388
|
+
return patterns;
|
|
6389
|
+
}
|
|
6390
|
+
function getGlobOptionsFor(type) {
|
|
6391
|
+
return GLOB_OPTIONS[type] || GLOB_OPTIONS.base;
|
|
6392
|
+
}
|
|
6393
|
+
var I18N_PATHS, SCAN_PATTERNS, GLOB_OPTIONS;
|
|
6394
|
+
var init_constants = __esm({
|
|
6395
|
+
"packages/core/config/constants.js"() {
|
|
6396
|
+
"use strict";
|
|
6397
|
+
init_utils();
|
|
6398
|
+
I18N_PATHS = {
|
|
6399
|
+
// Monorepo source structure (locales at root, not in src/)
|
|
6400
|
+
SOURCE_ROOT: "packages/core/i18n",
|
|
6401
|
+
SOURCE_LOCALES: "packages/core/i18n/locales",
|
|
6402
|
+
SOURCE_EAGER: "packages/core/i18n/locales/eager",
|
|
6403
|
+
SOURCE_LAZY: "packages/core/i18n/locales/lazy",
|
|
6404
|
+
// Published structure (same as source - no flattening needed)
|
|
6405
|
+
PUBLISHED_ROOT: "i18n",
|
|
6406
|
+
PUBLISHED_LOCALES: "i18n/locales",
|
|
6407
|
+
PUBLISHED_EAGER: "i18n/locales/eager",
|
|
6408
|
+
PUBLISHED_LAZY: "i18n/locales/lazy"
|
|
6409
|
+
};
|
|
6410
|
+
SCAN_PATTERNS = {
|
|
6411
|
+
routes: {
|
|
6412
|
+
consumer: ["src/**/*Page.tsx", "src/pages/**/*Page.tsx"],
|
|
6413
|
+
exclude: [
|
|
6414
|
+
"**/node_modules/**",
|
|
6415
|
+
"**/dist/**",
|
|
6416
|
+
"**/build/**",
|
|
6417
|
+
"**/*.test.tsx",
|
|
6418
|
+
"**/*.stories.tsx"
|
|
6419
|
+
],
|
|
6420
|
+
extensions: [".tsx"]
|
|
6421
|
+
},
|
|
6422
|
+
css: {
|
|
6423
|
+
consumer: ["src/**/*.css"],
|
|
6424
|
+
themes: ["src/**/*.css"],
|
|
6425
|
+
extensions: [".css", ".scss", ".sass"],
|
|
6426
|
+
framework: [
|
|
6427
|
+
"packages/ui/src/**/*.css",
|
|
6428
|
+
"packages/core/components/src/**/*.css",
|
|
6429
|
+
"packages/core/templates/src/**/*.css"
|
|
6430
|
+
]
|
|
6431
|
+
},
|
|
6432
|
+
i18n: {
|
|
6433
|
+
eager: ["src/locales/*_*.json"],
|
|
6434
|
+
lazy: ["src/**/locales/*_*.json", "!src/locales/*_*.json"],
|
|
6435
|
+
framework: {
|
|
6436
|
+
eager: [`${I18N_PATHS.SOURCE_EAGER}/*_*.json`],
|
|
6437
|
+
lazy: [`${I18N_PATHS.SOURCE_LAZY}/*_*.json`]
|
|
6438
|
+
},
|
|
6439
|
+
extensions: [".json"]
|
|
6440
|
+
},
|
|
6441
|
+
assets: {
|
|
6442
|
+
consumer: ["public/**/*"],
|
|
6443
|
+
fallback: ["manifest.json"],
|
|
6444
|
+
modern: [
|
|
6445
|
+
"logo.svg",
|
|
6446
|
+
"favicon.svg",
|
|
6447
|
+
"apple-touch-icon.png",
|
|
6448
|
+
"android-chrome-192x192.png",
|
|
6449
|
+
"android-chrome-512x512.png"
|
|
6450
|
+
],
|
|
6451
|
+
patterns: [
|
|
6452
|
+
"favicon.svg",
|
|
6453
|
+
"favicon.ico",
|
|
6454
|
+
"favicon-*.png",
|
|
6455
|
+
"logo.svg",
|
|
6456
|
+
"logo.png",
|
|
6457
|
+
"logo.webp",
|
|
6458
|
+
"logo.avif",
|
|
6459
|
+
"apple-touch-icon*.png",
|
|
6460
|
+
"android-chrome-*.png",
|
|
6461
|
+
"manifest.json"
|
|
6462
|
+
],
|
|
6463
|
+
fonts: ["fonts/**/*.woff2", "fonts/**/*.woff", "fonts/**/*.ttf"],
|
|
6464
|
+
framework: ["packages/ui/assets/**/*"]
|
|
6465
|
+
},
|
|
6466
|
+
pwa: {
|
|
6467
|
+
consumer: [
|
|
6468
|
+
"public/manifest.json",
|
|
6469
|
+
"public/service-worker.js",
|
|
6470
|
+
"public/sw.js",
|
|
6471
|
+
"public/icon-192x192.png",
|
|
6472
|
+
"public/icon-512x512.png",
|
|
6473
|
+
"public/favicon.ico",
|
|
6474
|
+
"public/favicon.svg",
|
|
6475
|
+
"public/apple-touch-icon.png",
|
|
6476
|
+
"public/logo.svg"
|
|
6477
|
+
],
|
|
6478
|
+
exclude: ["**/node_modules/**", "**/dist/**", "**/build/**"],
|
|
6479
|
+
extensions: [".json", ".js", ".png", ".svg", ".ico"],
|
|
6480
|
+
framework: ["packages/ui/assets/**/*"]
|
|
6481
|
+
},
|
|
6482
|
+
globalIgnore: [
|
|
6483
|
+
"**/node_modules/**",
|
|
6484
|
+
"**/dist/**",
|
|
6485
|
+
"**/build/**",
|
|
6486
|
+
"**/.git/**",
|
|
6487
|
+
"**/coverage/**",
|
|
6488
|
+
"**/test/**"
|
|
6489
|
+
]
|
|
6490
|
+
};
|
|
6491
|
+
GLOB_OPTIONS = {
|
|
6492
|
+
base: {
|
|
6493
|
+
absolute: true,
|
|
6494
|
+
onlyFiles: true,
|
|
6495
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6496
|
+
},
|
|
6497
|
+
css: {
|
|
6498
|
+
absolute: true,
|
|
6499
|
+
onlyFiles: true,
|
|
6500
|
+
ignore: [...SCAN_PATTERNS.globalIgnore, "**/*.test.css"]
|
|
6501
|
+
},
|
|
6502
|
+
routes: {
|
|
6503
|
+
absolute: true,
|
|
6504
|
+
onlyFiles: true,
|
|
6505
|
+
ignore: [
|
|
6506
|
+
...SCAN_PATTERNS.globalIgnore,
|
|
6507
|
+
"**/*.test.tsx",
|
|
6508
|
+
"**/*.stories.tsx"
|
|
6509
|
+
]
|
|
6510
|
+
},
|
|
6511
|
+
i18n: {
|
|
6512
|
+
absolute: true,
|
|
6513
|
+
onlyFiles: true,
|
|
6514
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6515
|
+
},
|
|
6516
|
+
assets: {
|
|
6517
|
+
absolute: true,
|
|
6518
|
+
onlyFiles: true,
|
|
6519
|
+
ignore: SCAN_PATTERNS.globalIgnore
|
|
6520
|
+
}
|
|
6521
|
+
};
|
|
6522
|
+
}
|
|
6523
|
+
});
|
|
6524
|
+
|
|
6525
6525
|
// packages/core/config/utils/PathResolver.ts
|
|
6526
|
+
import * as fs from "node:fs";
|
|
6526
6527
|
import { createRequire } from "node:module";
|
|
6527
6528
|
import {
|
|
6528
6529
|
resolve,
|
|
@@ -6534,7 +6535,6 @@ import {
|
|
|
6534
6535
|
extname
|
|
6535
6536
|
} from "node:path";
|
|
6536
6537
|
import { fileURLToPath } from "node:url";
|
|
6537
|
-
import * as fs from "node:fs";
|
|
6538
6538
|
function safeExecuteAsync(fn, message) {
|
|
6539
6539
|
return fn().catch((error2) => {
|
|
6540
6540
|
throw new Error(
|
|
@@ -6547,8 +6547,8 @@ var init_PathResolver = __esm({
|
|
|
6547
6547
|
"packages/core/config/utils/PathResolver.ts"() {
|
|
6548
6548
|
"use strict";
|
|
6549
6549
|
init_utils();
|
|
6550
|
-
init_constants();
|
|
6551
6550
|
import_fast_glob = __toESM(require_out4(), 1);
|
|
6551
|
+
init_constants();
|
|
6552
6552
|
constants = {
|
|
6553
6553
|
getGlobOptionsFor: getGlobOptionsFor || void 0,
|
|
6554
6554
|
SCAN_PATTERNS: SCAN_PATTERNS || void 0,
|
|
@@ -7463,11 +7463,17 @@ var init_PathResolver = __esm({
|
|
|
7463
7463
|
/**
|
|
7464
7464
|
* Get path to empty.js module for optional dependency aliasing
|
|
7465
7465
|
* Used by Vite and Turbopack to alias missing optional deps
|
|
7466
|
-
* @returns
|
|
7466
|
+
* @param returnPackageSpecifier - If true, returns package specifier '@donotdev/core/empty' for Turbopack. If false, returns absolute path for Vite.
|
|
7467
|
+
* @returns Package specifier or absolute path to empty.js
|
|
7467
7468
|
*/
|
|
7468
|
-
getEmptyModulePath() {
|
|
7469
|
+
getEmptyModulePath(returnPackageSpecifier = false) {
|
|
7470
|
+
if (returnPackageSpecifier) {
|
|
7471
|
+
return "@donotdev/core/empty";
|
|
7472
|
+
}
|
|
7473
|
+
const resolved = this.resolvePackage("@donotdev/core/empty");
|
|
7474
|
+
if (resolved) return resolved;
|
|
7469
7475
|
const thisDir = dirname(fileURLToPath(import.meta.url));
|
|
7470
|
-
return this.normalizePath(join(thisDir, "../
|
|
7476
|
+
return this.normalizePath(join(thisDir, "../empty.js"));
|
|
7471
7477
|
}
|
|
7472
7478
|
// === PRIVATE METHODS ===
|
|
7473
7479
|
/**
|
|
@@ -7671,11 +7677,11 @@ var init_pathResolver = __esm({
|
|
|
7671
7677
|
});
|
|
7672
7678
|
|
|
7673
7679
|
// packages/tooling/src/bundler/utils.ts
|
|
7680
|
+
import { Buffer as Buffer2 } from "node:buffer";
|
|
7674
7681
|
import { createRequire as createRequire2 } from "node:module";
|
|
7675
|
-
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
7676
7682
|
import { dirname as dirname3, resolve as resolve3 } from "node:path";
|
|
7677
|
-
import { Buffer as Buffer2 } from "node:buffer";
|
|
7678
7683
|
import process from "node:process";
|
|
7684
|
+
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
7679
7685
|
var require2, __filename, __dirname;
|
|
7680
7686
|
var init_utils = __esm({
|
|
7681
7687
|
"packages/tooling/src/bundler/utils.ts"() {
|
|
@@ -7728,9 +7734,9 @@ async function askForSelection(message, choices, defaultValue = 0) {
|
|
|
7728
7734
|
|
|
7729
7735
|
// packages/tooling/src/apps/sync-secrets.ts
|
|
7730
7736
|
init_utils();
|
|
7731
|
-
init_errors();
|
|
7732
|
-
init_cli_output();
|
|
7733
7737
|
import { spawnSync } from "node:child_process";
|
|
7738
|
+
init_cli_output();
|
|
7739
|
+
init_errors();
|
|
7734
7740
|
init_pathResolver();
|
|
7735
7741
|
function parseEnvFile(filePath) {
|
|
7736
7742
|
if (!pathExists(filePath)) {
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview WAI Command Wrapper
|
|
3
|
+
* @description Re-exports wai from tooling for CLI bundling.
|
|
4
|
+
* Each command wrapper is bundled separately as a fully self-contained script.
|
|
5
|
+
*
|
|
6
|
+
* @version 0.0.1
|
|
7
|
+
* @since 0.0.1
|
|
8
|
+
* @author AMBROISE PARK Consulting
|
|
9
|
+
*/
|
|
10
|
+
export { wai as main } from '@donotdev/tooling';
|
|
11
|
+
//# sourceMappingURL=wai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wai.d.ts","sourceRoot":"","sources":["../../../src/bin/commands/wai.ts"],"names":[],"mappings":"AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// packages/cli/src/bin/commands/wai.ts
|
|
2
|
+
/**
|
|
3
|
+
* @fileoverview WAI Command Wrapper
|
|
4
|
+
* @description Re-exports wai from tooling for CLI bundling.
|
|
5
|
+
* Each command wrapper is bundled separately as a fully self-contained script.
|
|
6
|
+
*
|
|
7
|
+
* @version 0.0.1
|
|
8
|
+
* @since 0.0.1
|
|
9
|
+
* @author AMBROISE PARK Consulting
|
|
10
|
+
*/
|
|
11
|
+
export { wai as main } from '@donotdev/tooling';
|
|
12
|
+
//# sourceMappingURL=wai.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wai.js","sourceRoot":"","sources":["../../../src/bin/commands/wai.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC;;;;;;;;GAQG;AAEH,OAAO,EAAE,GAAG,IAAI,IAAI,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/bin/dndev.js
CHANGED
|
@@ -5,11 +5,11 @@ var __esm = (fn, res) => function __init() {
|
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
// packages/tooling/src/bundler/utils.ts
|
|
8
|
+
import { Buffer as Buffer2 } from "node:buffer";
|
|
8
9
|
import { createRequire } from "node:module";
|
|
9
|
-
import { fileURLToPath } from "node:url";
|
|
10
10
|
import { dirname, resolve } from "node:path";
|
|
11
|
-
import { Buffer as Buffer2 } from "node:buffer";
|
|
12
11
|
import process from "node:process";
|
|
12
|
+
import { fileURLToPath } from "node:url";
|
|
13
13
|
var require2, __filename, __dirname;
|
|
14
14
|
var init_utils = __esm({
|
|
15
15
|
"packages/tooling/src/bundler/utils.ts"() {
|
|
@@ -46,7 +46,7 @@ Usage: dndev <command>[:<app>] [options]
|
|
|
46
46
|
|
|
47
47
|
Commands:
|
|
48
48
|
init, create-project Create a new DoNotDev project
|
|
49
|
-
create-app
|
|
49
|
+
create-app [name] Add app to existing project (--builder vite|next, --functions)
|
|
50
50
|
dev [app] Start development server
|
|
51
51
|
build [app] Build for production
|
|
52
52
|
preview [app] Preview production build
|
|
@@ -57,17 +57,20 @@ Commands:
|
|
|
57
57
|
sync-secrets Sync env vars to Firebase/Vercel
|
|
58
58
|
cacheout [app] Clear build caches
|
|
59
59
|
bump Update framework packages and peer dependencies
|
|
60
|
+
wai Output WAI-WAY activation prompt for AI agents
|
|
60
61
|
|
|
61
62
|
Options:
|
|
62
63
|
-v, --version Display version number
|
|
63
64
|
-h, --help Display this help
|
|
64
65
|
|
|
65
66
|
Examples:
|
|
66
|
-
dndev init my-
|
|
67
|
+
dndev init my-project Create a new project
|
|
68
|
+
dndev create-app Interactive app creation
|
|
69
|
+
dndev create-app my-app Create 'my-app' with defaults (vite, no functions)
|
|
70
|
+
dndev create-app my-app --builder next --functions Create Next.js app with functions
|
|
67
71
|
dndev dev Start dev server
|
|
68
72
|
dndev dev:web Start dev server for 'web' app
|
|
69
|
-
dndev
|
|
70
|
-
dndev deploy Deploy to Firebase
|
|
73
|
+
dndev wai Output WAI-WAY activation prompt
|
|
71
74
|
|
|
72
75
|
Run 'dndev <command> --help' for command-specific help.`);
|
|
73
76
|
process.exit(0);
|
|
@@ -88,9 +91,18 @@ program.command("init [name]").alias("create-project").description("Create a new
|
|
|
88
91
|
const { main } = await import("./commands/create-project.js");
|
|
89
92
|
await main({ projectName: name });
|
|
90
93
|
});
|
|
91
|
-
program.command("create-app [name]").description("Add a new app to existing project").action(async () => {
|
|
94
|
+
program.command("create-app [name]").description("Add a new app to existing project").option("--name <name>", "App name (non-interactive)").option("--builder <builder>", "Framework: vite or next (default: vite)").option("--functions", "Include Firebase functions").action(async (name, options) => {
|
|
92
95
|
const { main } = await import("./commands/create-app.js");
|
|
93
|
-
|
|
96
|
+
const appName = name || options.name;
|
|
97
|
+
if (appName) {
|
|
98
|
+
await main({
|
|
99
|
+
name: appName,
|
|
100
|
+
builder: options.builder,
|
|
101
|
+
functions: options.functions
|
|
102
|
+
});
|
|
103
|
+
} else {
|
|
104
|
+
await main();
|
|
105
|
+
}
|
|
94
106
|
});
|
|
95
107
|
var formatCmd = program.command("format").description("Format code with Prettier");
|
|
96
108
|
addCommonOptions(formatCmd);
|
|
@@ -200,6 +212,10 @@ program.command("preview [app]").description("Preview production build").action(
|
|
|
200
212
|
}
|
|
201
213
|
process.exit(await main());
|
|
202
214
|
});
|
|
215
|
+
program.command("wai").alias("wai-way").description("Output WAI-WAY activation prompt for AI agents").option("-w, --workflow", "Show workflow summary only").option("-c, --copy", "Copy prompt to clipboard").action(async () => {
|
|
216
|
+
const { main } = await import("./commands/wai.js");
|
|
217
|
+
process.exit(await main());
|
|
218
|
+
});
|
|
203
219
|
function preprocessArgs(args2) {
|
|
204
220
|
if (args2.length === 0) return args2;
|
|
205
221
|
const firstArg = args2[0];
|
package/dist/bin/donotdev.js
CHANGED
|
@@ -5,11 +5,11 @@ var __esm = (fn, res) => function __init() {
|
|
|
5
5
|
};
|
|
6
6
|
|
|
7
7
|
// packages/tooling/src/bundler/utils.ts
|
|
8
|
+
import { Buffer as Buffer2 } from "node:buffer";
|
|
8
9
|
import { createRequire } from "node:module";
|
|
9
|
-
import { fileURLToPath } from "node:url";
|
|
10
10
|
import { dirname, resolve } from "node:path";
|
|
11
|
-
import { Buffer as Buffer2 } from "node:buffer";
|
|
12
11
|
import process from "node:process";
|
|
12
|
+
import { fileURLToPath } from "node:url";
|
|
13
13
|
var require2, __filename, __dirname;
|
|
14
14
|
var init_utils = __esm({
|
|
15
15
|
"packages/tooling/src/bundler/utils.ts"() {
|
|
@@ -46,7 +46,7 @@ Usage: dndev <command>[:<app>] [options]
|
|
|
46
46
|
|
|
47
47
|
Commands:
|
|
48
48
|
init, create-project Create a new DoNotDev project
|
|
49
|
-
create-app
|
|
49
|
+
create-app [name] Add app to existing project (--builder vite|next, --functions)
|
|
50
50
|
dev [app] Start development server
|
|
51
51
|
build [app] Build for production
|
|
52
52
|
preview [app] Preview production build
|
|
@@ -57,17 +57,20 @@ Commands:
|
|
|
57
57
|
sync-secrets Sync env vars to Firebase/Vercel
|
|
58
58
|
cacheout [app] Clear build caches
|
|
59
59
|
bump Update framework packages and peer dependencies
|
|
60
|
+
wai Output WAI-WAY activation prompt for AI agents
|
|
60
61
|
|
|
61
62
|
Options:
|
|
62
63
|
-v, --version Display version number
|
|
63
64
|
-h, --help Display this help
|
|
64
65
|
|
|
65
66
|
Examples:
|
|
66
|
-
dndev init my-
|
|
67
|
+
dndev init my-project Create a new project
|
|
68
|
+
dndev create-app Interactive app creation
|
|
69
|
+
dndev create-app my-app Create 'my-app' with defaults (vite, no functions)
|
|
70
|
+
dndev create-app my-app --builder next --functions Create Next.js app with functions
|
|
67
71
|
dndev dev Start dev server
|
|
68
72
|
dndev dev:web Start dev server for 'web' app
|
|
69
|
-
dndev
|
|
70
|
-
dndev deploy Deploy to Firebase
|
|
73
|
+
dndev wai Output WAI-WAY activation prompt
|
|
71
74
|
|
|
72
75
|
Run 'dndev <command> --help' for command-specific help.`);
|
|
73
76
|
process.exit(0);
|
|
@@ -88,9 +91,18 @@ program.command("init [name]").alias("create-project").description("Create a new
|
|
|
88
91
|
const { main } = await import("./commands/create-project.js");
|
|
89
92
|
await main({ projectName: name });
|
|
90
93
|
});
|
|
91
|
-
program.command("create-app [name]").description("Add a new app to existing project").action(async () => {
|
|
94
|
+
program.command("create-app [name]").description("Add a new app to existing project").option("--name <name>", "App name (non-interactive)").option("--builder <builder>", "Framework: vite or next (default: vite)").option("--functions", "Include Firebase functions").action(async (name, options) => {
|
|
92
95
|
const { main } = await import("./commands/create-app.js");
|
|
93
|
-
|
|
96
|
+
const appName = name || options.name;
|
|
97
|
+
if (appName) {
|
|
98
|
+
await main({
|
|
99
|
+
name: appName,
|
|
100
|
+
builder: options.builder,
|
|
101
|
+
functions: options.functions
|
|
102
|
+
});
|
|
103
|
+
} else {
|
|
104
|
+
await main();
|
|
105
|
+
}
|
|
94
106
|
});
|
|
95
107
|
var formatCmd = program.command("format").description("Format code with Prettier");
|
|
96
108
|
addCommonOptions(formatCmd);
|
|
@@ -200,6 +212,10 @@ program.command("preview [app]").description("Preview production build").action(
|
|
|
200
212
|
}
|
|
201
213
|
process.exit(await main());
|
|
202
214
|
});
|
|
215
|
+
program.command("wai").alias("wai-way").description("Output WAI-WAY activation prompt for AI agents").option("-w, --workflow", "Show workflow summary only").option("-c, --copy", "Copy prompt to clipboard").action(async () => {
|
|
216
|
+
const { main } = await import("./commands/wai.js");
|
|
217
|
+
process.exit(await main());
|
|
218
|
+
});
|
|
203
219
|
function preprocessArgs(args2) {
|
|
204
220
|
if (args2.length === 0) return args2;
|
|
205
221
|
const firstArg = args2[0];
|