@digitaldefiance/express-suite-starter 4.19.11 → 4.21.0

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.
Files changed (107) hide show
  1. package/README.md +185 -0
  2. package/config/presets/brightstack.json +90 -0
  3. package/dist/src/core/interfaces/devcontainer-config.interface.d.ts +1 -0
  4. package/dist/src/core/interfaces/devcontainer-config.interface.d.ts.map +1 -1
  5. package/dist/src/core/interfaces/generator-config.interface.d.ts +1 -0
  6. package/dist/src/core/interfaces/generator-config.interface.d.ts.map +1 -1
  7. package/dist/src/core/interfaces/validation-issue.interface.d.ts +1 -1
  8. package/dist/src/core/interfaces/validation-issue.interface.d.ts.map +1 -1
  9. package/dist/src/core/programmatic-generator.d.ts +4 -0
  10. package/dist/src/core/programmatic-generator.d.ts.map +1 -1
  11. package/dist/src/core/programmatic-generator.js +45 -12
  12. package/dist/src/core/programmatic-generator.js.map +1 -1
  13. package/dist/src/core/validators/post-generation-validator.d.ts +22 -1
  14. package/dist/src/core/validators/post-generation-validator.d.ts.map +1 -1
  15. package/dist/src/core/validators/post-generation-validator.js +127 -0
  16. package/dist/src/core/validators/post-generation-validator.js.map +1 -1
  17. package/dist/src/generate-monorepo.d.ts.map +1 -1
  18. package/dist/src/generate-monorepo.js +129 -45
  19. package/dist/src/generate-monorepo.js.map +1 -1
  20. package/dist/src/i18n/starter-string-key.d.ts +13 -1
  21. package/dist/src/i18n/starter-string-key.d.ts.map +1 -1
  22. package/dist/src/i18n/starter-string-key.js +17 -0
  23. package/dist/src/i18n/starter-string-key.js.map +1 -1
  24. package/dist/src/i18n/strings/de.d.ts.map +1 -1
  25. package/dist/src/i18n/strings/de.js +17 -0
  26. package/dist/src/i18n/strings/de.js.map +1 -1
  27. package/dist/src/i18n/strings/en-gb.d.ts +12 -0
  28. package/dist/src/i18n/strings/en-gb.d.ts.map +1 -1
  29. package/dist/src/i18n/strings/en-us.d.ts.map +1 -1
  30. package/dist/src/i18n/strings/en-us.js +17 -0
  31. package/dist/src/i18n/strings/en-us.js.map +1 -1
  32. package/dist/src/i18n/strings/es.d.ts.map +1 -1
  33. package/dist/src/i18n/strings/es.js +17 -0
  34. package/dist/src/i18n/strings/es.js.map +1 -1
  35. package/dist/src/i18n/strings/fr.d.ts.map +1 -1
  36. package/dist/src/i18n/strings/fr.js +17 -0
  37. package/dist/src/i18n/strings/fr.js.map +1 -1
  38. package/dist/src/i18n/strings/ja.d.ts.map +1 -1
  39. package/dist/src/i18n/strings/ja.js +17 -0
  40. package/dist/src/i18n/strings/ja.js.map +1 -1
  41. package/dist/src/i18n/strings/uk.d.ts.map +1 -1
  42. package/dist/src/i18n/strings/uk.js +17 -0
  43. package/dist/src/i18n/strings/uk.js.map +1 -1
  44. package/dist/src/i18n/strings/zh-cn.d.ts.map +1 -1
  45. package/dist/src/i18n/strings/zh-cn.js +17 -0
  46. package/dist/src/i18n/strings/zh-cn.js.map +1 -1
  47. package/dist/src/i18n/translations-all.d.ts +12 -0
  48. package/dist/src/i18n/translations-all.d.ts.map +1 -1
  49. package/package.json +2 -1
  50. package/scaffolding/api-brightstack/.env.example.mustache +48 -0
  51. package/scaffolding/api-brightstack/src/main.ts.mustache +20 -0
  52. package/scaffolding/api-lib-brightstack/src/index.ts +9 -0
  53. package/scaffolding/api-lib-brightstack/src/lib/application.ts +85 -0
  54. package/scaffolding/api-lib-brightstack/src/lib/collections/index.ts +13 -0
  55. package/scaffolding/api-lib-brightstack/src/lib/documents/user.ts +22 -0
  56. package/scaffolding/api-lib-brightstack/src/lib/environment.ts +55 -0
  57. package/scaffolding/api-lib-brightstack/src/lib/routers/api.ts +164 -0
  58. package/scaffolding/api-lib-brightstack/src/lib/routers/app.ts +32 -0
  59. package/scaffolding/api-lib-brightstack/src/lib/routers/base.ts +22 -0
  60. package/scaffolding/api-lib-brightstack/src/lib/routers/index.ts +2 -0
  61. package/scaffolding/api-lib-brightstack/src/lib/schemas/index.ts +2 -0
  62. package/scaffolding/api-lib-brightstack/src/lib/schemas/schema.ts +28 -0
  63. package/scaffolding/api-lib-brightstack/src/lib/schemas/user.ts +26 -0
  64. package/scaffolding/api-lib-brightstack/src/lib/services/email.ts +108 -0
  65. package/scaffolding/api-lib-brightstack/src/lib/shared-types.ts +149 -0
  66. package/scaffolding/api-lib-mern/src/lib/constants.ts.mustache +10 -0
  67. package/scaffolding/api-lib-mern/src/lib/documents/index.ts +1 -0
  68. package/scaffolding/api-lib-mern/src/lib/interfaces/constants.ts +9 -0
  69. package/scaffolding/api-lib-mern/src/lib/interfaces/environment-aws.ts +7 -0
  70. package/scaffolding/api-lib-mern/src/lib/interfaces/environment.ts +10 -0
  71. package/scaffolding/api-lib-mern/src/lib/middlewares.ts.mustache +113 -0
  72. package/scaffolding/api-lib-mern/src/lib/services/index.ts +1 -0
  73. package/scaffolding/{api → api-mern}/.env.example.mustache +1 -0
  74. package/scaffolding/api-mern/src/assets/.gitkeep +0 -0
  75. package/scaffolding/api-mern/src/views/index.ejs +34 -0
  76. package/scaffolding/inituserdb-brightstack/.env.example.mustache +14 -0
  77. package/scaffolding/inituserdb-brightstack/src/main.ts.mustache +195 -0
  78. package/scaffolding/{inituserdb → inituserdb-mern}/.env.example.mustache +1 -0
  79. /package/scaffolding/{api → api-brightstack}/src/assets/.gitkeep +0 -0
  80. /package/scaffolding/{api → api-brightstack}/src/views/index.ejs +0 -0
  81. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/constants.ts.mustache +0 -0
  82. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/documents/index.ts +0 -0
  83. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/interfaces/constants.ts +0 -0
  84. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/interfaces/environment-aws.ts +0 -0
  85. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/interfaces/environment.ts +0 -0
  86. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/middlewares.ts.mustache +0 -0
  87. /package/scaffolding/{api-lib → api-lib-brightstack}/src/lib/services/index.ts +0 -0
  88. /package/scaffolding/{api-lib → api-lib-mern}/src/index.ts +0 -0
  89. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/application.ts +0 -0
  90. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/documents/user.ts +0 -0
  91. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/environment.ts +0 -0
  92. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/email-token.ts +0 -0
  93. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/mnemonic.ts +0 -0
  94. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/role.ts +0 -0
  95. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/used-direct-login-token.ts +0 -0
  96. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/user-role.ts +0 -0
  97. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/models/user.ts +0 -0
  98. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/routers/api.ts +0 -0
  99. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/routers/app.ts +0 -0
  100. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/routers/index.ts +0 -0
  101. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/schemas/index.ts +0 -0
  102. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/schemas/schema.ts +0 -0
  103. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/schemas/user.ts +0 -0
  104. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/services/email.ts +0 -0
  105. /package/scaffolding/{api-lib → api-lib-mern}/src/lib/shared-types.ts +0 -0
  106. /package/scaffolding/{api → api-mern}/src/main.ts.mustache +0 -0
  107. /package/scaffolding/{inituserdb → inituserdb-mern}/src/main.ts.mustache +0 -0
package/README.md CHANGED
@@ -520,6 +520,191 @@ MIT © Digital Defiance
520
520
 
521
521
  ## ChangeLog
522
522
 
523
+ ### Version 4.19.11
524
+
525
+ - Version sync release (no substantive changes)
526
+
527
+ ### Version 3.0.3
528
+
529
+ - Add Albatross branding assets (ico, jpg, png, svg)
530
+ - Enhance README with Express Suite details and images
531
+ - Update scaffolded React app to use Albatross branding
532
+
533
+ ### Version 3.0.2
534
+
535
+ - Update scaffolded types to use renamed document interfaces from node-express-suite (e.g. `IBaseDocument` → `BaseDocument`, `IUserRoleDocument` → `UserRoleDocument`)
536
+
537
+ ### Version 3.0.1
538
+
539
+ - Fix inituserdb to use `mongoPlugin.mongoApplication` with null check instead of unsafe cast
540
+
541
+ ### Version 3.0.0
542
+
543
+ - Add programmatic (headless) monorepo generation API (`ProgrammaticGenerator`)
544
+ - Add `src/index.ts` public entry point for library usage
545
+ - Add Playwright e2e tests and `project.json` with e2e target
546
+ - Refactor scaffolded `Application` class to use `MongoApplicationBase` and `MongoDatabasePlugin`
547
+ - Update scaffolded inituserdb to use `MongooseDocumentStore` and `MongoApplicationBase`
548
+
549
+ ### Version 2.4.17
550
+
551
+ - Use mustache template variables for site title, tagline, and description in scaffolded constants
552
+
553
+ ### Version 2.4.16
554
+
555
+ - Dependency updates
556
+
557
+ ### Version 2.4.15
558
+
559
+ - Refactor scaffolded `Application` to use `MongoApplicationBase`
560
+ - Update scaffolded inituserdb to use `MongooseDocumentStore`
561
+
562
+ ### Version 2.4.14
563
+
564
+ - Extend `IConstants` with `ISuiteCoreI18nConstants` for type-safe i18n template variables
565
+
566
+ ### Version 2.4.13
567
+
568
+ - Dependency updates
569
+
570
+ ### Version 2.4.12 - 2.4.11
571
+
572
+ - Dependency updates
573
+
574
+ ### Version 2.4.10
575
+
576
+ - Simplify scaffolded i18n setup to use `createI18nSetup` helper
577
+ - Remove verbose manual i18n engine configuration from scaffolded lib and starter
578
+
579
+ ### Version 2.4.9
580
+
581
+ - Add scaffolded `README.md` template for generated projects
582
+
583
+ ### Version 2.4.8
584
+
585
+ - Update test count in README (137 → 96)
586
+
587
+ ### Version 2.4.7
588
+
589
+ - Refactor scaffolded `Application` to use library's `ApiRouter` with built-in `UserController` auth routes
590
+ - Expand scaffolded API router with additional route handling and documentation
591
+ - Enhance scaffolded api-lib README template
592
+
593
+ ### Version 2.4.6
594
+
595
+ - Dependency updates
596
+
597
+ ### Version 2.4.5
598
+
599
+ - Enhance i18n setup with `translateStringKey` support and `safeTranslate` fallback function
600
+ - Register branded string key enum for direct translation support in scaffolded lib
601
+ - Accept `StringKeyValue` union type in translate functions
602
+
603
+ ### Version 2.4.4
604
+
605
+ - Migrate scaffolded string keys from enum to branded enum using `createI18nStringKeys`
606
+ - Update scaffolded i18n setup to use `BrandedEnumValue` types
607
+ - Update scaffolded strings collection to use `BrandedMasterStringsCollection`
608
+
609
+ ### Version 2.4.3
610
+
611
+ - Dependency updates
612
+
613
+ ### Version 2.4.2
614
+
615
+ - Fix jest config for test setup
616
+
617
+ ### Version 2.4.0
618
+
619
+ - Add branded starter string key module (`branded-starter-string-key.ts`)
620
+ - Update scaffolded React app to use `SuiteCoreStringKeyValue` type
621
+ - Pin `@noble/curves`, `@noble/hashes`, `@scure/bip32`, `@scure/bip39` resolutions
622
+ - Remove yarn.lock from tracked files
623
+
624
+ ### Version 2.3.28
625
+
626
+ - Add post-generation step in `generate-monorepo.ts`
627
+
628
+ ### Version 2.3.27
629
+
630
+ - Remove `@digitaldefiance/express-suite-react-components` dependency
631
+
632
+ ### Version 2.3.26
633
+
634
+ - Dependency updates
635
+
636
+ ### Version 2.3.25
637
+
638
+ - Improve scaffolded user document generics (use `PlatformID`, named type params)
639
+ - Add `PlatformID` generic to scaffolded `Environment` and `IEnvironment`
640
+ - Update scaffolded `ApiRouter` generics with `CoreLanguageCode` type param
641
+
642
+ ### Version 2.3.24
643
+
644
+ - Dependency updates
645
+
646
+ ### Version 2.3.22 - 2.3.23
647
+
648
+ - Dependency updates
649
+
650
+ ### Version 2.3.21
651
+
652
+ - Dependency updates
653
+
654
+ ### Version 2.3.20 - 2.3.18
655
+
656
+ - Dependency updates
657
+
658
+ ### Version 2.3.17 - 2.3.15
659
+
660
+ - Dependency updates
661
+
662
+ ### Version 2.3.14
663
+
664
+ - Add git initialization step to `generate-monorepo.ts`
665
+ - Add i18n strings for git init prompts across all languages
666
+
667
+ ### Version 2.3.13
668
+
669
+ - Dependency updates
670
+
671
+ ### Version 2.3.12
672
+
673
+ - Add global `lru-cache` mock in test setup
674
+ - Update test tsconfig paths
675
+
676
+ ### Version 2.3.11
677
+
678
+ - Add ESLint config (`eslint.config.mjs`) and Jest config
679
+ - Add Dockerfile, `.dockerignore`, and ECR deploy script scaffolding
680
+ - Add `tsconfig.test.json`
681
+ - Fix diff-viewer and doc-generator imports
682
+
683
+ ### Version 2.3.10
684
+
685
+ - Improve i18n translations for French, Japanese, Ukrainian, and Chinese (formatting and completeness)
686
+
687
+ ### Version 2.3.9
688
+
689
+ - Update `createUserSchema` call signature (additional parameter)
690
+ - Refactor scaffolded API/inituserdb serve targets to use `nx:run-commands` instead of `@nx/js:node`
691
+ - Mark `@digitaldefiance/*` packages as external in esbuild options
692
+
693
+ ### Version 2.3.8
694
+
695
+ - Refactor `generate-monorepo.ts` build targets: add esbuild external packages, production yarn install, and `prune-lockfile`/`copy-workspace-modules` dependencies
696
+
697
+ ### Version 2.3.4
698
+
699
+ - Fix preset to use non-workspace package reference for test-utils
700
+ - Add `typeRoots` and `noImplicitOverride` to tsconfig
701
+
702
+ ### Version 2.3.3
703
+
704
+ - Major refactor of `generate-monorepo.ts` (formatting, structure, i18n integration)
705
+ - Add publish script
706
+ - Update project generator tests
707
+
523
708
  ### Version 2.3.1
524
709
 
525
710
  - Update react-components, test-utils
@@ -0,0 +1,90 @@
1
+ {
2
+ "templates": {
3
+ "engine": "mustache"
4
+ },
5
+ "nx": {
6
+ "linter": "eslint",
7
+ "unitTestRunner": "jest",
8
+ "e2eTestRunner": "playwright",
9
+ "style": "scss",
10
+ "bundler": "vite",
11
+ "ciProvider": "github"
12
+ },
13
+ "node": {
14
+ "version": "22",
15
+ "yarnVersion": "4.9.1"
16
+ },
17
+ "packages": {
18
+ "dev": [
19
+ "@typescript-eslint/eslint-plugin",
20
+ "@typescript-eslint/parser",
21
+ "eslint-config-prettier",
22
+ "eslint-plugin-prettier",
23
+ "eslint-plugin-react",
24
+ "eslint-plugin-react-hooks",
25
+ "eslint-plugin-import",
26
+ "eslint-plugin-jsx-a11y",
27
+ "eslint-plugin-playwright",
28
+ "supertest",
29
+ "patch-package",
30
+ "@types/cors",
31
+ "@types/express",
32
+ "@types/jsonwebtoken",
33
+ "@types/supertest",
34
+ "@types/node",
35
+ "@types/react",
36
+ "@types/react-dom",
37
+ "sass"
38
+ ],
39
+ "prod": [
40
+ "@brightchain/node-express-suite",
41
+ "@brightchain/db",
42
+ "@brightchain/brightchain-lib",
43
+ "@digitaldefiance/node-express-suite",
44
+ "@digitaldefiance/branded-interface",
45
+ "@digitaldefiance/branded-enum",
46
+ "@digitaldefiance/secrets",
47
+ "@digitaldefiance/ecies-lib",
48
+ "@digitaldefiance/node-ecies-lib",
49
+ "@digitaldefiance/i18n-lib",
50
+ "@digitaldefiance/suite-core-lib",
51
+ "@digitaldefiance/reed-solomon-erasure.wasm",
52
+ "@digitaldefiance/express-suite-react-components",
53
+ "@ethereumjs/wallet",
54
+ "@noble/hashes",
55
+ "@scure/bip32",
56
+ "@scure/bip39",
57
+ "blakejs",
58
+ "elliptic",
59
+ "email-addresses",
60
+ "otpauth",
61
+ "paillier-bigint",
62
+ "postal-mime",
63
+ "qrcode",
64
+ "secp256k1",
65
+ "ts-brand",
66
+ "uuid",
67
+ "validator",
68
+ "@emotion/react",
69
+ "@emotion/styled",
70
+ "@mui/icons-material",
71
+ "@mui/material",
72
+ "@mui/system",
73
+ "@mui/x-date-pickers",
74
+ "@aws-sdk/client-ses",
75
+ "argon2",
76
+ "axios",
77
+ "bip39",
78
+ "currency-codes",
79
+ "date-fns",
80
+ "react",
81
+ "react-dom",
82
+ "react-router-dom",
83
+ "cors",
84
+ "dotenv",
85
+ "express",
86
+ "helmet",
87
+ "jsonwebtoken"
88
+ ]
89
+ }
90
+ }
@@ -2,5 +2,6 @@ export interface DevContainerConfig {
2
2
  enabled: boolean;
3
3
  includeMongoDB: boolean;
4
4
  mongoReplicaSet: boolean;
5
+ stackType?: 'mern' | 'brightstack';
5
6
  }
6
7
  //# sourceMappingURL=devcontainer-config.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"devcontainer-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/devcontainer-config.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;CAC1B"}
1
+ {"version":3,"file":"devcontainer-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/devcontainer-config.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;CACpC"}
@@ -13,5 +13,6 @@ export interface GeneratorConfig {
13
13
  nx: NxConfig;
14
14
  node: NodeConfig;
15
15
  devcontainer?: DevContainerConfig;
16
+ stackType: 'mern' | 'brightstack';
16
17
  }
17
18
  //# sourceMappingURL=generator-config.interface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/generator-config.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,eAAe,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,EAAE,cAAc,CAAC;IAC1B,EAAE,EAAE,QAAQ,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,CAAC,EAAE,kBAAkB,CAAC;CACnC"}
1
+ {"version":3,"file":"generator-config.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/generator-config.interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,eAAe,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,EAAE,cAAc,CAAC;IAC1B,EAAE,EAAE,QAAQ,CAAC;IACb,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,SAAS,EAAE,MAAM,GAAG,aAAa,CAAC;CACnC"}
@@ -1,6 +1,6 @@
1
1
  export interface ValidationIssue {
2
2
  type: 'error' | 'warning' | 'info';
3
- category: 'lint' | 'dependency' | 'security' | 'bestPractice';
3
+ category: 'lint' | 'dependency' | 'security' | 'bestPractice' | 'stackMismatch';
4
4
  message: string;
5
5
  file?: string;
6
6
  line?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"validation-issue.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/validation-issue.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACnC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,CAAC;IAC9D,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH"}
1
+ {"version":3,"file":"validation-issue.interface.d.ts","sourceRoot":"","sources":["../../../../src/core/interfaces/validation-issue.interface.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACnC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,UAAU,GAAG,cAAc,GAAG,eAAe,CAAC;IAChF,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,OAAO,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;CACH"}
@@ -45,6 +45,10 @@ export interface ProgrammaticOptions {
45
45
  installPlaywright?: boolean;
46
46
  /** Whether to skip system check */
47
47
  skipSystemCheck?: boolean;
48
+ /** BrightStack block store path (for disk-backed storage) */
49
+ blockStorePath?: string;
50
+ /** BrightStack member pool name */
51
+ memberPoolName?: string;
48
52
  }
49
53
  /**
50
54
  * Run the monorepo generator programmatically without interactive prompts.
@@ -1 +1 @@
1
- {"version":3,"file":"programmatic-generator.d.ts","sourceRoot":"","sources":["../../../src/core/programmatic-generator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAc1E,OAAO,EAAiB,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAS9E;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,MAAM,EAAE,eAAe,CAAC;IACxB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,oBAAoB;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,iCAAiC;IACjC,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,oBAAoB,CAAC;QAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,uCAAuC;IACvC,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,wDAAwD;IACxD,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,8CAA8C;IAC9C,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6CAA6C;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mCAAmC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CA6If"}
1
+ {"version":3,"file":"programmatic-generator.d.ts","sourceRoot":"","sources":["../../../src/core/programmatic-generator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAc1E,OAAO,EAAiB,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAS9E;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,iFAAiF;IACjF,MAAM,EAAE,eAAe,CAAC;IACxB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,QAAQ,CAAC,EAAE,kBAAkB,CAAC;IAC9B,oBAAoB;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,iCAAiC;IACjC,YAAY,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,oBAAoB,CAAC;QAC3D,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,uCAAuC;IACvC,UAAU,CAAC,EAAE;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,wDAAwD;IACxD,OAAO,CAAC,EAAE;QACR,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,8CAA8C;IAC9C,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,6CAA6C;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6CAA6C;IAC7C,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,mCAAmC;IACnC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,6DAA6D;IAC7D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAmJf"}
@@ -61,7 +61,7 @@ const post_generation_validator_1 = require("./validators/post-generation-valida
61
61
  * @throws Error if configuration validation fails or a step fails
62
62
  */
63
63
  async function generateMonorepo(options) {
64
- const { config, dryRun = false, hostname = `${config.workspace.name}.local`, language = i18n_lib_1.LanguageCodes.EN_US, siteTitle = 'Your Site Title', siteDescription = 'Your description here', siteTagline = 'Your tagline here', includeE2e = true, selectedGroups = [], devcontainer = { type: 'none' }, inMemoryDb = { enabled: false }, secrets = {}, createInitialCommit = false, pushToRemote = false, installPlaywright = false, skipSystemCheck: _skipSystemCheck = true, } = options;
64
+ const { config, dryRun = false, hostname = `${config.workspace.name}.local`, language = i18n_lib_1.LanguageCodes.EN_US, siteTitle = 'Your Site Title', siteDescription = 'Your description here', siteTagline = 'Your tagline here', includeE2e = true, selectedGroups = [], devcontainer = { type: 'none' }, inMemoryDb = { enabled: false }, secrets = {}, createInitialCommit = false, pushToRemote = false, installPlaywright = false, skipSystemCheck: _skipSystemCheck = true, blockStorePath = '', memberPoolName = 'BrightChain', } = options;
65
65
  (0, nodeSetup_1.checkAndUseNode)();
66
66
  // Disable Yarn build scripts globally to avoid native module issues
67
67
  process.env.YARN_ENABLE_SCRIPTS = 'false';
@@ -70,6 +70,9 @@ async function generateMonorepo(options) {
70
70
  if (!validation.valid) {
71
71
  throw new Error(`Invalid configuration: ${validation.errors.join(', ')}`);
72
72
  }
73
+ // Attach blockStorePath and memberPoolName to config for downstream use
74
+ config.blockStorePath = blockStorePath;
75
+ config.memberPoolName = memberPoolName;
73
76
  const { workspace, projects } = config;
74
77
  const monorepoPath = path.join(workspace.parentDir, workspace.name);
75
78
  // Generate secrets if not provided
@@ -423,6 +426,7 @@ function buildSteps(executor, params) {
423
426
  .replace(/\r/g, '\\r')
424
427
  .replace(/\t/g, '\\t');
425
428
  };
429
+ const resolvedStackType = config.stackType ?? 'mern';
426
430
  const scaffoldingVars = {
427
431
  workspaceName,
428
432
  WorkspaceName: workspaceName.charAt(0).toUpperCase() +
@@ -444,6 +448,14 @@ function buildSteps(executor, params) {
444
448
  isZhCn: language === i18n_lib_1.LanguageCodes.ZH_CN,
445
449
  isJa: language === i18n_lib_1.LanguageCodes.JA,
446
450
  isUk: language === i18n_lib_1.LanguageCodes.UK,
451
+ // Stack-specific template variables
452
+ stackType: resolvedStackType,
453
+ isMern: resolvedStackType === 'mern',
454
+ isBrightStack: resolvedStackType === 'brightstack',
455
+ blockStorePath: config.blockStorePath ?? '',
456
+ useMemoryDocstore: useInMemoryDb ? 'true' : '',
457
+ memberPoolName: config.memberPoolName ?? 'BrightChain',
458
+ devDatabase: useInMemoryDb ? devDatabaseName : '',
447
459
  };
448
460
  // Copy root scaffolding
449
461
  const rootSrc = path.join(scaffoldingDir, 'root');
@@ -459,8 +471,13 @@ function buildSteps(executor, params) {
459
471
  }
460
472
  }
461
473
  // Copy project-specific scaffolding
474
+ // Stack-dependent project types use suffixed directories (e.g., api-mern, api-lib-mern, inituserdb-mern)
475
+ const stackDependentTypes = ['api', 'api-lib', 'inituserdb'];
462
476
  projects.forEach((project) => {
463
- const projectSrc = path.join(scaffoldingDir, project.type);
477
+ const scaffoldingDirName = stackDependentTypes.includes(project.type)
478
+ ? `${project.type}-${resolvedStackType}`
479
+ : project.type;
480
+ const projectSrc = path.join(scaffoldingDir, scaffoldingDirName);
464
481
  if (fs.existsSync(projectSrc)) {
465
482
  (0, template_renderer_1.copyDir)(projectSrc, path.join(monorepoPath, project.name), scaffoldingVars, 'mustache', context.dryRun);
466
483
  }
@@ -598,6 +615,9 @@ function buildSteps(executor, params) {
598
615
  jwtSecret,
599
616
  mnemonicEncryptionKey,
600
617
  mnemonicHmacSecret,
618
+ stackType: config.stackType,
619
+ blockStorePath: config.blockStorePath,
620
+ memberPoolName: config.memberPoolName,
601
621
  });
602
622
  },
603
623
  });
@@ -842,7 +862,8 @@ function configureReactProjectJson(projects, monorepoPath) {
842
862
  }
843
863
  /** Setup .env files for api, inituserdb, and devcontainer */
844
864
  function setupEnvironmentFiles(params) {
845
- const { projects, monorepoPath, workspaceName, devcontainerChoice, mongoPassword, useInMemoryDb, devDatabaseName, jwtSecret, mnemonicEncryptionKey, mnemonicHmacSecret, } = params;
865
+ const { projects, monorepoPath, workspaceName, devcontainerChoice, mongoPassword, useInMemoryDb, devDatabaseName, jwtSecret, mnemonicEncryptionKey, mnemonicHmacSecret, stackType: paramStackType, blockStorePath, memberPoolName, } = params;
866
+ const envStackType = paramStackType ?? 'mern';
846
867
  const apiProject = projects.find((p) => p.type === 'api');
847
868
  const initUserDbProject = projects.find((p) => p.type === 'inituserdb');
848
869
  const escapeEnvValue = (value) => {
@@ -873,16 +894,28 @@ function setupEnvironmentFiles(params) {
873
894
  envContent = envContent.replace(/JWT_SECRET=.*/g, `JWT_SECRET=${jwtSecret}`);
874
895
  envContent = envContent.replace(/MNEMONIC_ENCRYPTION_KEY=.*/g, `MNEMONIC_ENCRYPTION_KEY=${mnemonicEncryptionKey}`);
875
896
  envContent = envContent.replace(/MNEMONIC_HMAC_SECRET=.*/g, `MNEMONIC_HMAC_SECRET=${mnemonicHmacSecret}`);
876
- if (devcontainerChoice === 'mongodb' ||
877
- devcontainerChoice === 'mongodb-replicaset') {
878
- const mongoUri = buildMongoUri(workspaceName);
879
- envContent = envContent.replace(/MONGO_URI=.*/g, `MONGO_URI=${mongoUri}`);
880
- }
881
- if (devcontainerChoice === 'mongodb-replicaset') {
882
- envContent = envContent.replace(/MONGO_USE_TRANSACTIONS=.*/g, 'MONGO_USE_TRANSACTIONS=true');
897
+ // BrightStack-specific env replacements
898
+ if (envStackType === 'brightstack') {
899
+ if (blockStorePath) {
900
+ envContent = envContent.replace(/BRIGHTCHAIN_BLOCKSTORE_PATH=.*/g, `BRIGHTCHAIN_BLOCKSTORE_PATH=${blockStorePath}`);
901
+ }
902
+ if (memberPoolName) {
903
+ envContent = envContent.replace(/MEMBER_POOL_NAME=.*/g, `MEMBER_POOL_NAME=${memberPoolName}`);
904
+ }
883
905
  }
884
- else {
885
- envContent = envContent.replace(/MONGO_USE_TRANSACTIONS=.*/g, 'MONGO_USE_TRANSACTIONS=false');
906
+ // MERN-specific env replacements (skip for BrightStack)
907
+ if (envStackType === 'mern') {
908
+ if (devcontainerChoice === 'mongodb' ||
909
+ devcontainerChoice === 'mongodb-replicaset') {
910
+ const mongoUri = buildMongoUri(workspaceName);
911
+ envContent = envContent.replace(/MONGO_URI=.*/g, `MONGO_URI=${mongoUri}`);
912
+ }
913
+ if (devcontainerChoice === 'mongodb-replicaset') {
914
+ envContent = envContent.replace(/MONGO_USE_TRANSACTIONS=.*/g, 'MONGO_USE_TRANSACTIONS=true');
915
+ }
916
+ else {
917
+ envContent = envContent.replace(/MONGO_USE_TRANSACTIONS=.*/g, 'MONGO_USE_TRANSACTIONS=false');
918
+ }
886
919
  }
887
920
  fs.writeFileSync(envPath, envContent);
888
921
  logger_1.Logger.info(`Created ${apiProject.name}/.env with secrets`);
@@ -1 +1 @@
1
- {"version":3,"file":"programmatic-generator.js","sourceRoot":"","sources":["../../../src/core/programmatic-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"programmatic-generator.js","sourceRoot":"","sources":["../../../src/core/programmatic-generator.ts"],"names":[],"mappings":"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"}