create-warlock 4.0.30 → 4.0.39

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 (121) hide show
  1. package/cjs/index.js +10 -5
  2. package/cjs/index.js.map +1 -1
  3. package/create-app.js +0 -0
  4. package/esm/index.js +10 -5
  5. package/esm/index.js.map +1 -1
  6. package/package.json +32 -38
  7. package/templates/warlock/docs/new-module.md +123 -61
  8. package/templates/warlock/package.json +60 -67
  9. package/templates/warlock/src/app/auth/controllers/forgot-password.controller.ts +3 -2
  10. package/templates/warlock/src/app/auth/controllers/login.controller.ts +1 -4
  11. package/templates/warlock/src/app/auth/main.ts +6 -3
  12. package/templates/warlock/src/app/auth/models/otp/migrations/22-12-2025_10-30-20.otp-migration.ts +13 -16
  13. package/templates/warlock/src/app/auth/models/otp/otp.model.ts +26 -31
  14. package/templates/warlock/src/app/auth/requests/login.request.ts +1 -1
  15. package/templates/warlock/src/app/auth/services/auth.service.ts +10 -5
  16. package/templates/warlock/src/app/auth/services/otp.service.ts +2 -12
  17. package/templates/warlock/src/app/auth/services/reset-password.service.ts +1 -1
  18. package/templates/warlock/src/app/posts/controllers/create-new-post.controller.ts +20 -0
  19. package/templates/warlock/src/app/posts/controllers/update-post.controller.ts +24 -0
  20. package/templates/warlock/src/app/posts/models/post/psot.model.ts +33 -0
  21. package/templates/warlock/src/app/posts/routes.ts +11 -0
  22. package/templates/warlock/src/app/shared/utils/global-columns-schema.ts +8 -0
  23. package/templates/warlock/src/app/shared/utils/locales.ts +4 -0
  24. package/templates/warlock/src/app/uploads/controllers/fetch-uploaded-file.controller.ts +32 -0
  25. package/templates/warlock/src/app/uploads/routes.ts +4 -0
  26. package/templates/warlock/src/app/users/controllers/create-new-user.controller.ts +28 -0
  27. package/templates/warlock/src/app/users/controllers/get-users.controller.ts +7 -2
  28. package/templates/warlock/src/app/users/events/inject-created-by-user.into-model.event.ts +32 -0
  29. package/templates/warlock/src/app/users/events/sync.ts +5 -0
  30. package/templates/warlock/src/app/users/main.ts +5 -0
  31. package/templates/warlock/src/app/users/models/user/migrations/11-12-2025_23-58-03-user.migration.ts +12 -12
  32. package/templates/warlock/src/app/users/models/user/user.model.ts +54 -27
  33. package/templates/warlock/src/app/users/repositories/users.repository.ts +16 -20
  34. package/templates/warlock/src/app/users/routes.ts +7 -1
  35. package/templates/warlock/src/app/users/seeds/users.seed.ts +21 -0
  36. package/templates/warlock/src/app/utils/cloud-upload.middleware.ts +14 -0
  37. package/templates/warlock/src/app/utils/router.ts +11 -1
  38. package/templates/warlock/src/config/auth.ts +2 -0
  39. package/templates/warlock/src/config/database.ts +24 -7
  40. package/templates/warlock/src/config/storage.ts +17 -8
  41. package/templates/warlock/tsconfig.json +6 -5
  42. package/templates/warlock/yarn.lock +4831 -0
  43. package/cjs/commands/create-new-app/get-app-path.d.ts +0 -2
  44. package/cjs/commands/create-new-app/get-app-path.d.ts.map +0 -1
  45. package/cjs/commands/create-new-app/get-app-path.js +0 -8
  46. package/cjs/commands/create-new-app/get-app-path.js.map +0 -1
  47. package/cjs/commands/create-new-app/index.d.ts +0 -2
  48. package/cjs/commands/create-new-app/index.d.ts.map +0 -1
  49. package/cjs/commands/create-new-app/index.js +0 -50
  50. package/cjs/commands/create-new-app/index.js.map +0 -1
  51. package/cjs/commands/create-new-app/select-app-type.d.ts +0 -2
  52. package/cjs/commands/create-new-app/select-app-type.d.ts.map +0 -1
  53. package/cjs/commands/create-new-app/types.d.ts +0 -9
  54. package/cjs/commands/create-new-app/types.d.ts.map +0 -1
  55. package/cjs/commands/create-warlock-app/index.d.ts +0 -3
  56. package/cjs/commands/create-warlock-app/index.d.ts.map +0 -1
  57. package/cjs/commands/create-warlock-app/index.js +0 -51
  58. package/cjs/commands/create-warlock-app/index.js.map +0 -1
  59. package/cjs/helpers/app.d.ts +0 -54
  60. package/cjs/helpers/app.d.ts.map +0 -1
  61. package/cjs/helpers/app.js +0 -126
  62. package/cjs/helpers/app.js.map +0 -1
  63. package/cjs/helpers/exec.d.ts +0 -10
  64. package/cjs/helpers/exec.d.ts.map +0 -1
  65. package/cjs/helpers/exec.js +0 -69
  66. package/cjs/helpers/exec.js.map +0 -1
  67. package/cjs/helpers/package-manager.d.ts +0 -6
  68. package/cjs/helpers/package-manager.d.ts.map +0 -1
  69. package/cjs/helpers/package-manager.js +0 -22
  70. package/cjs/helpers/package-manager.js.map +0 -1
  71. package/cjs/helpers/paths.d.ts +0 -4
  72. package/cjs/helpers/paths.d.ts.map +0 -1
  73. package/cjs/helpers/paths.js +0 -8
  74. package/cjs/helpers/paths.js.map +0 -1
  75. package/cjs/helpers/project-builder-helpers.d.ts +0 -6
  76. package/cjs/helpers/project-builder-helpers.d.ts.map +0 -1
  77. package/cjs/helpers/project-builder-helpers.js +0 -18
  78. package/cjs/helpers/project-builder-helpers.js.map +0 -1
  79. package/cjs/index.d.ts +0 -2
  80. package/cjs/index.d.ts.map +0 -1
  81. package/esm/commands/create-new-app/get-app-path.d.ts +0 -2
  82. package/esm/commands/create-new-app/get-app-path.d.ts.map +0 -1
  83. package/esm/commands/create-new-app/get-app-path.js +0 -8
  84. package/esm/commands/create-new-app/get-app-path.js.map +0 -1
  85. package/esm/commands/create-new-app/index.d.ts +0 -2
  86. package/esm/commands/create-new-app/index.d.ts.map +0 -1
  87. package/esm/commands/create-new-app/index.js +0 -50
  88. package/esm/commands/create-new-app/index.js.map +0 -1
  89. package/esm/commands/create-new-app/select-app-type.d.ts +0 -2
  90. package/esm/commands/create-new-app/select-app-type.d.ts.map +0 -1
  91. package/esm/commands/create-new-app/types.d.ts +0 -9
  92. package/esm/commands/create-new-app/types.d.ts.map +0 -1
  93. package/esm/commands/create-warlock-app/index.d.ts +0 -3
  94. package/esm/commands/create-warlock-app/index.d.ts.map +0 -1
  95. package/esm/commands/create-warlock-app/index.js +0 -51
  96. package/esm/commands/create-warlock-app/index.js.map +0 -1
  97. package/esm/helpers/app.d.ts +0 -54
  98. package/esm/helpers/app.d.ts.map +0 -1
  99. package/esm/helpers/app.js +0 -126
  100. package/esm/helpers/app.js.map +0 -1
  101. package/esm/helpers/exec.d.ts +0 -10
  102. package/esm/helpers/exec.d.ts.map +0 -1
  103. package/esm/helpers/exec.js +0 -69
  104. package/esm/helpers/exec.js.map +0 -1
  105. package/esm/helpers/package-manager.d.ts +0 -6
  106. package/esm/helpers/package-manager.d.ts.map +0 -1
  107. package/esm/helpers/package-manager.js +0 -22
  108. package/esm/helpers/package-manager.js.map +0 -1
  109. package/esm/helpers/paths.d.ts +0 -4
  110. package/esm/helpers/paths.d.ts.map +0 -1
  111. package/esm/helpers/paths.js +0 -8
  112. package/esm/helpers/paths.js.map +0 -1
  113. package/esm/helpers/project-builder-helpers.d.ts +0 -6
  114. package/esm/helpers/project-builder-helpers.d.ts.map +0 -1
  115. package/esm/helpers/project-builder-helpers.js +0 -18
  116. package/esm/helpers/project-builder-helpers.js.map +0 -1
  117. package/esm/index.d.ts +0 -2
  118. package/esm/index.d.ts.map +0 -1
  119. package/templates/warlock/src/app/users/repositories/users-repository.ts +0 -66
  120. package/templates/warlock/src/app/users/services/get-new-customers.ts +0 -5
  121. package/templates/warlock/src/app/utils/output.ts +0 -5
@@ -1,16 +1,33 @@
1
1
  import { env } from "@mongez/dotenv";
2
- import type { DatabaseConfigurations } from "@warlock.js/cascade";
2
+ import type {
3
+ ConnectionOptions,
4
+ MongoClientOptions,
5
+ MongoDriverOptions,
6
+ } from "@warlock.js/cascade";
3
7
 
4
- const databaseConfigurations: DatabaseConfigurations = {
8
+ const databaseConfigurations: ConnectionOptions<MongoDriverOptions, MongoClientOptions> = {
9
+ driver: "mongodb",
10
+ name: "default",
11
+ database: env("DB_NAME"),
5
12
  host: env("DB_HOST", "localhost"),
6
13
  port: env("DB_PORT", 27017),
7
14
  username: env("DB_USERNAME"),
8
15
  password: env("DB_PASSWORD"),
9
- database: env("DB_NAME"),
10
- dbAuth: env("DB_AUTH"),
11
- url: env("DB_URL"),
12
- replicaSet: env("DB_REPLICA_SET"),
13
- model: {
16
+ authSource: env("DB_AUTH"),
17
+ uri: env("DB_URL"),
18
+
19
+ driverOptions: {
20
+ autoGenerateId: true,
21
+ counterCollection: "counters",
22
+ },
23
+
24
+ defaultDeleteStrategy: "trash",
25
+
26
+ clientOptions: {
27
+ replicaSet: env("DB_REPLICA_SET"),
28
+ },
29
+
30
+ modelOptions: {
14
31
  randomIncrement: true,
15
32
  initialId: 1,
16
33
  },
@@ -1,20 +1,29 @@
1
1
  import { env } from "@mongez/dotenv";
2
- import { type StorageConfigurations, uploadsPath } from "@warlock.js/core";
2
+ import { type StorageConfigurations, storageConfigurations, uploadsPath } from "@warlock.js/core";
3
3
 
4
4
  const storageOptions: StorageConfigurations = {
5
- default: "rafaat",
5
+ default: "local",
6
6
  drivers: {
7
- rafaat: {
8
- driver: "local",
7
+ local: storageConfigurations.local({
9
8
  root: uploadsPath(),
10
- },
11
- aws: {
12
- driver: "s3",
9
+ urlPrefix: "/uploads",
10
+ }),
11
+ aws: storageConfigurations.aws({
13
12
  accessKeyId: env("AWS_ACCESS_KEY_ID"),
14
13
  secretAccessKey: env("AWS_SECRET_ACCESS_KEY"),
15
14
  region: env("AWS_REGION"),
16
15
  bucket: env("AWS_BUCKET"),
17
- },
16
+ }),
17
+ r2: storageConfigurations.r2({
18
+ bucket: env("R2_BUCKET"),
19
+ endpoint: env("R2_ENDPOINT"),
20
+ accessKeyId: env("R2_ACCESS_KEY_ID"),
21
+ secretAccessKey: env("R2_SECRET_ACCESS_KEY"),
22
+ accountId: env("R2_ACCOUNT_ID"),
23
+ region: env("R2_REGION", "auto"),
24
+ publicDomain: env("R2_BASE_URL"),
25
+ prefix: "warlock.js",
26
+ }),
18
27
  },
19
28
  };
20
29
 
@@ -1,14 +1,16 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "target": "ESNext",
4
- "lib": ["esnext"],
5
- "allowJs": true,
4
+ "lib": ["esnext", "dom"],
5
+ "allowJs": false,
6
6
  "skipLibCheck": true,
7
+ "experimentalDecorators": true,
7
8
  "esModuleInterop": true,
8
9
  "allowSyntheticDefaultImports": true,
9
10
  "downlevelIteration": true,
10
11
  "strict": true,
11
12
  "forceConsistentCasingInFileNames": true,
13
+ "typeRoots": ["./src/typings.d.ts"],
12
14
  "noFallthroughCasesInSwitch": true,
13
15
  "module": "ESNext",
14
16
  "moduleResolution": "node",
@@ -17,11 +19,10 @@
17
19
  "isolatedModules": true,
18
20
  "baseUrl": "./",
19
21
  "paths": {
20
- "app/*": ["src/app/*"],
21
- "src/*": ["./src/*"]
22
+ "app/*": ["src/app/*"]
22
23
  },
23
24
  "noEmit": true
24
25
  },
25
- "include": ["src", "warlock.config.ts", ".warlock/**/*.d.ts"],
26
+ "include": ["src", "warlock.config.ts", ".warlock/typings/*.d.ts"],
26
27
  "exclude": ["node_modules"]
27
28
  }