@arikajs/cli 0.0.4 → 0.0.5

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 (228) hide show
  1. package/README.md +99 -6
  2. package/dist/bin/arika.js +2 -2
  3. package/dist/bin/arika.js.map +1 -1
  4. package/dist/src/ApplicationLoader.d.ts +5 -0
  5. package/dist/src/ApplicationLoader.d.ts.map +1 -1
  6. package/dist/src/ApplicationLoader.js +24 -2
  7. package/dist/src/ApplicationLoader.js.map +1 -1
  8. package/dist/src/Bootstrap.d.ts.map +1 -1
  9. package/dist/src/Bootstrap.js +35 -0
  10. package/dist/src/Bootstrap.js.map +1 -1
  11. package/dist/src/Commands/AuthApiInstallCommand.d.ts +24 -0
  12. package/dist/src/Commands/AuthApiInstallCommand.d.ts.map +1 -0
  13. package/dist/src/Commands/AuthApiInstallCommand.js +751 -0
  14. package/dist/src/Commands/AuthApiInstallCommand.js.map +1 -0
  15. package/dist/src/Commands/AuthInstallCommand.d.ts +7 -0
  16. package/dist/src/Commands/AuthInstallCommand.d.ts.map +1 -0
  17. package/dist/src/Commands/AuthInstallCommand.js +46 -0
  18. package/dist/src/Commands/AuthInstallCommand.js.map +1 -0
  19. package/dist/src/Commands/AuthWebInstallCommand.d.ts +31 -0
  20. package/dist/src/Commands/AuthWebInstallCommand.d.ts.map +1 -0
  21. package/dist/src/Commands/AuthWebInstallCommand.js +1100 -0
  22. package/dist/src/Commands/AuthWebInstallCommand.js.map +1 -0
  23. package/dist/src/Commands/BenchmarkCommand.d.ts +7 -0
  24. package/dist/src/Commands/BenchmarkCommand.d.ts.map +1 -0
  25. package/dist/src/Commands/BenchmarkCommand.js +25 -0
  26. package/dist/src/Commands/BenchmarkCommand.js.map +1 -0
  27. package/dist/src/Commands/CacheClearCommand.d.ts +7 -0
  28. package/dist/src/Commands/CacheClearCommand.d.ts.map +1 -0
  29. package/dist/src/Commands/CacheClearCommand.js +33 -0
  30. package/dist/src/Commands/CacheClearCommand.js.map +1 -0
  31. package/dist/src/Commands/CacheTableCommand.d.ts.map +1 -1
  32. package/dist/src/Commands/CacheTableCommand.js +21 -9
  33. package/dist/src/Commands/CacheTableCommand.js.map +1 -1
  34. package/dist/src/Commands/ConfigCacheCommand.d.ts +7 -0
  35. package/dist/src/Commands/ConfigCacheCommand.d.ts.map +1 -0
  36. package/dist/src/Commands/ConfigCacheCommand.js +86 -0
  37. package/dist/src/Commands/ConfigCacheCommand.js.map +1 -0
  38. package/dist/src/Commands/ConfigClearCommand.d.ts +7 -0
  39. package/dist/src/Commands/ConfigClearCommand.d.ts.map +1 -0
  40. package/dist/src/Commands/ConfigClearCommand.js +29 -0
  41. package/dist/src/Commands/ConfigClearCommand.js.map +1 -0
  42. package/dist/src/Commands/DocsGenerateCommand.d.ts +0 -1
  43. package/dist/src/Commands/DocsGenerateCommand.d.ts.map +1 -1
  44. package/dist/src/Commands/DocsGenerateCommand.js +68 -77
  45. package/dist/src/Commands/DocsGenerateCommand.js.map +1 -1
  46. package/dist/src/Commands/EnvValidateCommand.d.ts +7 -0
  47. package/dist/src/Commands/EnvValidateCommand.d.ts.map +1 -0
  48. package/dist/src/Commands/EnvValidateCommand.js +51 -0
  49. package/dist/src/Commands/EnvValidateCommand.js.map +1 -0
  50. package/dist/src/Commands/ListCommand.d.ts.map +1 -1
  51. package/dist/src/Commands/ListCommand.js +15 -8
  52. package/dist/src/Commands/ListCommand.js.map +1 -1
  53. package/dist/src/Commands/MakeCommand.d.ts +7 -0
  54. package/dist/src/Commands/MakeCommand.d.ts.map +1 -0
  55. package/dist/src/Commands/MakeCommand.js +110 -0
  56. package/dist/src/Commands/MakeCommand.js.map +1 -0
  57. package/dist/src/Commands/MakeCommandCommand.d.ts +20 -0
  58. package/dist/src/Commands/MakeCommandCommand.d.ts.map +1 -0
  59. package/dist/src/Commands/MakeCommandCommand.js +82 -0
  60. package/dist/src/Commands/MakeCommandCommand.js.map +1 -0
  61. package/dist/src/Commands/MakeControllerCommand.d.ts +17 -0
  62. package/dist/src/Commands/MakeControllerCommand.d.ts.map +1 -0
  63. package/dist/src/Commands/MakeControllerCommand.js +90 -0
  64. package/dist/src/Commands/MakeControllerCommand.js.map +1 -0
  65. package/dist/src/Commands/MakeEventCommand.d.ts +8 -0
  66. package/dist/src/Commands/MakeEventCommand.d.ts.map +1 -0
  67. package/dist/src/Commands/MakeEventCommand.js +48 -0
  68. package/dist/src/Commands/MakeEventCommand.js.map +1 -0
  69. package/dist/src/Commands/MakeJobCommand.d.ts +8 -0
  70. package/dist/src/Commands/MakeJobCommand.d.ts.map +1 -0
  71. package/dist/src/Commands/MakeJobCommand.js +55 -0
  72. package/dist/src/Commands/MakeJobCommand.js.map +1 -0
  73. package/dist/src/Commands/MakeListenerCommand.d.ts +8 -0
  74. package/dist/src/Commands/MakeListenerCommand.d.ts.map +1 -0
  75. package/dist/src/Commands/MakeListenerCommand.js +55 -0
  76. package/dist/src/Commands/MakeListenerCommand.js.map +1 -0
  77. package/dist/src/Commands/MakeMiddlewareCommand.d.ts +17 -0
  78. package/dist/src/Commands/MakeMiddlewareCommand.d.ts.map +1 -0
  79. package/dist/src/Commands/MakeMiddlewareCommand.js +69 -0
  80. package/dist/src/Commands/MakeMiddlewareCommand.js.map +1 -0
  81. package/dist/src/Commands/MakeMigrationCommand.js +4 -4
  82. package/dist/src/Commands/MakeMigrationCommand.js.map +1 -1
  83. package/dist/src/Commands/MakeModelCommand.d.ts +26 -0
  84. package/dist/src/Commands/MakeModelCommand.d.ts.map +1 -0
  85. package/dist/src/Commands/MakeModelCommand.js +193 -0
  86. package/dist/src/Commands/MakeModelCommand.js.map +1 -0
  87. package/dist/src/Commands/MakeProviderCommand.d.ts +17 -0
  88. package/dist/src/Commands/MakeProviderCommand.d.ts.map +1 -0
  89. package/dist/src/Commands/MakeProviderCommand.js +72 -0
  90. package/dist/src/Commands/MakeProviderCommand.js.map +1 -0
  91. package/dist/src/Commands/MakeViewCommand.d.ts +7 -0
  92. package/dist/src/Commands/MakeViewCommand.d.ts.map +1 -0
  93. package/dist/src/Commands/MakeViewCommand.js +37 -0
  94. package/dist/src/Commands/MakeViewCommand.js.map +1 -0
  95. package/dist/src/Commands/MigrateFreshCommand.d.ts +10 -0
  96. package/dist/src/Commands/MigrateFreshCommand.d.ts.map +1 -0
  97. package/dist/src/Commands/MigrateFreshCommand.js +129 -0
  98. package/dist/src/Commands/MigrateFreshCommand.js.map +1 -0
  99. package/dist/src/Commands/NewCommand.d.ts.map +1 -1
  100. package/dist/src/Commands/NewCommand.js +92 -24
  101. package/dist/src/Commands/NewCommand.js.map +1 -1
  102. package/dist/src/Commands/QueueFailedCommand.d.ts +7 -0
  103. package/dist/src/Commands/QueueFailedCommand.d.ts.map +1 -0
  104. package/dist/src/Commands/QueueFailedCommand.js +30 -0
  105. package/dist/src/Commands/QueueFailedCommand.js.map +1 -0
  106. package/dist/src/Commands/QueueFailedTableCommand.d.ts +7 -0
  107. package/dist/src/Commands/QueueFailedTableCommand.d.ts.map +1 -0
  108. package/dist/src/Commands/QueueFailedTableCommand.js +55 -0
  109. package/dist/src/Commands/QueueFailedTableCommand.js.map +1 -0
  110. package/dist/src/Commands/QueueFlushCommand.d.ts +7 -0
  111. package/dist/src/Commands/QueueFlushCommand.d.ts.map +1 -0
  112. package/dist/src/Commands/QueueFlushCommand.js +21 -0
  113. package/dist/src/Commands/QueueFlushCommand.js.map +1 -0
  114. package/dist/src/Commands/QueueRetryCommand.d.ts +7 -0
  115. package/dist/src/Commands/QueueRetryCommand.d.ts.map +1 -0
  116. package/dist/src/Commands/QueueRetryCommand.js +36 -0
  117. package/dist/src/Commands/QueueRetryCommand.js.map +1 -0
  118. package/dist/src/Commands/QueueTableCommand.d.ts.map +1 -1
  119. package/dist/src/Commands/QueueTableCommand.js +19 -13
  120. package/dist/src/Commands/QueueTableCommand.js.map +1 -1
  121. package/dist/src/Commands/QueueWorkCommand.d.ts +8 -0
  122. package/dist/src/Commands/QueueWorkCommand.d.ts.map +1 -0
  123. package/dist/src/Commands/QueueWorkCommand.js +88 -0
  124. package/dist/src/Commands/QueueWorkCommand.js.map +1 -0
  125. package/dist/src/Commands/RouteListCommand.d.ts +7 -0
  126. package/dist/src/Commands/RouteListCommand.d.ts.map +1 -0
  127. package/dist/src/Commands/RouteListCommand.js +108 -0
  128. package/dist/src/Commands/RouteListCommand.js.map +1 -0
  129. package/dist/src/Commands/ScheduleRunCommand.d.ts +9 -0
  130. package/dist/src/Commands/ScheduleRunCommand.d.ts.map +1 -0
  131. package/dist/src/Commands/ScheduleRunCommand.js +80 -0
  132. package/dist/src/Commands/ScheduleRunCommand.js.map +1 -0
  133. package/dist/src/Commands/ScheduleWorkCommand.d.ts +9 -0
  134. package/dist/src/Commands/ScheduleWorkCommand.d.ts.map +1 -0
  135. package/dist/src/Commands/ScheduleWorkCommand.js +81 -0
  136. package/dist/src/Commands/ScheduleWorkCommand.js.map +1 -0
  137. package/dist/src/Commands/ServeCommand.d.ts +1 -0
  138. package/dist/src/Commands/ServeCommand.d.ts.map +1 -1
  139. package/dist/src/Commands/ServeCommand.js +111 -21
  140. package/dist/src/Commands/ServeCommand.js.map +1 -1
  141. package/dist/src/TemplateManager.d.ts +4 -0
  142. package/dist/src/TemplateManager.d.ts.map +1 -1
  143. package/dist/src/TemplateManager.js +35 -6
  144. package/dist/src/TemplateManager.js.map +1 -1
  145. package/dist/templates/app/.env.example +47 -0
  146. package/dist/templates/app/README.md +62 -0
  147. package/dist/templates/app/app/Exceptions/Handler.ts +19 -0
  148. package/dist/templates/app/app/Http/Controllers/UserController.ts +90 -0
  149. package/dist/templates/app/app/Http/Kernel.ts +43 -0
  150. package/dist/templates/app/app/Http/Middleware/Authenticate.ts +10 -0
  151. package/dist/templates/app/app/Http/Middleware/EnsureEmailIsVerified.ts +18 -0
  152. package/dist/templates/app/app/Http/Middleware/ExampleMiddleware.ts +12 -0
  153. package/dist/templates/app/app/Http/Middleware/RedirectIfAuthenticated.ts +18 -0
  154. package/dist/templates/app/app/Http/Middleware/TrimStrings.ts +12 -0
  155. package/dist/templates/app/app/Http/Middleware/TrustProxies.ts +23 -0
  156. package/dist/templates/app/app/Http/Middleware/VerifyCsrfToken.ts +10 -0
  157. package/dist/templates/app/app/Models/User.ts +15 -0
  158. package/dist/templates/app/app/Providers/AppServiceProvider.ts +17 -0
  159. package/dist/templates/app/app/Providers/RouteServiceProvider.ts +35 -0
  160. package/dist/templates/app/bootstrap/app.ts +41 -0
  161. package/dist/templates/app/config/app.ts +10 -0
  162. package/dist/templates/app/config/cache.ts +44 -0
  163. package/dist/templates/app/config/database.ts +63 -0
  164. package/dist/templates/app/config/filesystems.ts +35 -0
  165. package/dist/templates/app/config/http.ts +6 -0
  166. package/dist/templates/app/config/logging.ts +37 -0
  167. package/dist/templates/app/config/mail.ts +29 -0
  168. package/dist/templates/app/config/queue.ts +42 -0
  169. package/{templates/app/database/migrations/0001_create_users_table.ts → dist/templates/app/database/migrations/2024_01_01_000001_create_users_table.ts} +3 -1
  170. package/dist/templates/app/database/migrations/2024_01_01_000002_create_password_resets_table.ts +22 -0
  171. package/dist/templates/app/database/migrations/2024_01_01_000003_create_failed_jobs_table.ts +25 -0
  172. package/dist/templates/app/package.json +22 -0
  173. package/dist/templates/app/public/assets/img/favicon.png +0 -0
  174. package/dist/templates/app/public/assets/img/logo.png +0 -0
  175. package/dist/templates/app/resources/views/errors/401.ark.html +320 -0
  176. package/dist/templates/app/resources/views/errors/403.ark.html +320 -0
  177. package/dist/templates/app/resources/views/errors/404.ark.html +320 -0
  178. package/dist/templates/app/resources/views/errors/419.ark.html +320 -0
  179. package/dist/templates/app/resources/views/errors/429.ark.html +320 -0
  180. package/dist/templates/app/resources/views/errors/500.ark.html +320 -0
  181. package/dist/templates/app/resources/views/errors/503.ark.html +320 -0
  182. package/dist/templates/app/resources/views/welcome.ark.html +846 -0
  183. package/dist/templates/app/routes/api.ts +39 -0
  184. package/dist/templates/app/routes/web.ts +10 -0
  185. package/dist/templates/app/server.ts +15 -0
  186. package/dist/templates/app/tsconfig.json +27 -0
  187. package/package.json +16 -10
  188. package/templates/app/.env.example +2 -2
  189. package/templates/app/README.md +62 -0
  190. package/templates/app/app/Exceptions/Handler.ts +19 -0
  191. package/templates/app/app/Http/Controllers/UserController.ts +90 -0
  192. package/templates/app/app/Http/Kernel.ts +39 -14
  193. package/templates/app/app/Http/Middleware/Authenticate.ts +10 -0
  194. package/templates/app/app/Http/Middleware/EnsureEmailIsVerified.ts +18 -0
  195. package/templates/app/app/Http/Middleware/ExampleMiddleware.ts +12 -0
  196. package/templates/app/app/Http/Middleware/RedirectIfAuthenticated.ts +18 -0
  197. package/templates/app/app/Http/Middleware/TrimStrings.ts +12 -0
  198. package/templates/app/app/Http/Middleware/TrustProxies.ts +23 -0
  199. package/templates/app/app/Http/Middleware/VerifyCsrfToken.ts +10 -0
  200. package/templates/app/app/Models/User.ts +5 -5
  201. package/templates/app/app/Providers/AppServiceProvider.ts +17 -0
  202. package/templates/app/app/Providers/RouteServiceProvider.ts +35 -0
  203. package/templates/app/bootstrap/app.ts +30 -2
  204. package/templates/app/config/app.ts +7 -6
  205. package/templates/app/config/cache.ts +14 -7
  206. package/templates/app/config/database.ts +48 -21
  207. package/templates/app/config/filesystems.ts +11 -9
  208. package/templates/app/config/http.ts +3 -2
  209. package/templates/app/config/logging.ts +6 -4
  210. package/templates/app/config/mail.ts +10 -8
  211. package/templates/app/config/queue.ts +6 -4
  212. package/templates/app/database/migrations/2024_01_01_000001_create_users_table.ts +25 -0
  213. package/templates/app/database/migrations/2024_01_01_000002_create_password_resets_table.ts +22 -0
  214. package/templates/app/database/migrations/2024_01_01_000003_create_failed_jobs_table.ts +25 -0
  215. package/templates/app/package.json +4 -3
  216. package/templates/app/public/assets/img/favicon.png +0 -0
  217. package/templates/app/public/assets/img/logo.png +0 -0
  218. package/templates/app/resources/views/welcome.ark.html +846 -0
  219. package/templates/app/routes/api.ts +8 -3
  220. package/templates/app/routes/web.ts +8 -4
  221. package/templates/app/server.ts +3 -4
  222. package/templates/app/tsconfig.json +12 -0
  223. package/dist/tests/Cli.test.d.ts +0 -2
  224. package/dist/tests/Cli.test.d.ts.map +0 -1
  225. package/dist/tests/Cli.test.js +0 -16
  226. package/dist/tests/Cli.test.js.map +0 -1
  227. package/templates/app/app/Controllers/UserController.ts +0 -88
  228. package/templates/app/resources/views/welcome.html +0 -470
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MakeMiddlewareCommand = void 0;
7
+ const console_1 = require("@arikajs/console");
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ /**
11
+ * Command to generate a new middleware.
12
+ *
13
+ * Usage:
14
+ * arika make:middleware AuthMiddleware
15
+ *
16
+ * Generates:
17
+ * app/Http/Middleware/AuthMiddleware.ts
18
+ */
19
+ class MakeMiddlewareCommand extends console_1.Command {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.signature = 'make:middleware {name}';
23
+ this.description = 'Create a new middleware class';
24
+ }
25
+ async handle() {
26
+ const name = this.argument('name');
27
+ if (!name) {
28
+ this.error('Middleware name is required.');
29
+ return;
30
+ }
31
+ const dir = path_1.default.join(process.cwd(), 'app/Http/Middleware');
32
+ if (!fs_1.default.existsSync(dir)) {
33
+ fs_1.default.mkdirSync(dir, { recursive: true });
34
+ }
35
+ const fileName = `${name}.ts`;
36
+ const filePath = path_1.default.join(dir, fileName);
37
+ if (fs_1.default.existsSync(filePath)) {
38
+ this.error(`Middleware already exists: app/Http/Middleware/${fileName}`);
39
+ return;
40
+ }
41
+ fs_1.default.writeFileSync(filePath, this.getStub(name));
42
+ this.success(`Middleware created: app/Http/Middleware/${fileName}`);
43
+ }
44
+ getStub(name) {
45
+ return `import { Request, Response, NextFunction } from '@arikajs/http';
46
+
47
+ /**
48
+ * ${name}
49
+ *
50
+ * This middleware is executed for every matching route.
51
+ * Call next() to pass control to the next middleware or route handler.
52
+ */
53
+ export class ${name} {
54
+ /**
55
+ * Handle an incoming request.
56
+ */
57
+ public async handle(req: Request, res: Response, next: NextFunction): Promise<void> {
58
+ // Perform actions before the request reaches the controller...
59
+
60
+ await next();
61
+
62
+ // Perform actions after the response is generated...
63
+ }
64
+ }
65
+ `;
66
+ }
67
+ }
68
+ exports.MakeMiddlewareCommand = MakeMiddlewareCommand;
69
+ //# sourceMappingURL=MakeMiddlewareCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeMiddlewareCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeMiddlewareCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB;;;;;;;;GAQG;AACH,MAAa,qBAAsB,SAAQ,iBAAO;IAAlD;;QACW,cAAS,GAAG,wBAAwB,CAAC;QACrC,gBAAW,GAAG,+BAA+B,CAAC;IAkDzD,CAAC;IAhDU,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC3C,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAC;QAE5D,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,IAAI,KAAK,CAAC;QAC9B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE1C,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,kDAAkD,QAAQ,EAAE,CAAC,CAAC;YACzE,OAAO;QACX,CAAC;QAED,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,2CAA2C,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;IAEO,OAAO,CAAC,IAAY;QACxB,OAAO;;;KAGV,IAAI;;;;;eAKM,IAAI;;;;;;;;;;;;CAYlB,CAAC;IACE,CAAC;CACJ;AApDD,sDAoDC"}
@@ -23,9 +23,9 @@ class MakeMigrationCommand extends console_1.Command {
23
23
  return;
24
24
  }
25
25
  const date = new Date();
26
- const timestamp = date.getFullYear().toString() +
27
- (date.getMonth() + 1).toString().padStart(2, '0') +
28
- date.getDate().toString().padStart(2, '0') +
26
+ const timestamp = date.getFullYear().toString() + '_' +
27
+ (date.getMonth() + 1).toString().padStart(2, '0') + '_' +
28
+ date.getDate().toString().padStart(2, '0') + '_' +
29
29
  date.getHours().toString().padStart(2, '0') +
30
30
  date.getMinutes().toString().padStart(2, '0') +
31
31
  date.getSeconds().toString().padStart(2, '0');
@@ -44,7 +44,7 @@ class MakeMigrationCommand extends console_1.Command {
44
44
  */
45
45
  getStub(name) {
46
46
  const className = name.split('_').map(s => s.charAt(0).toUpperCase() + s.slice(1)).join('');
47
- return `import { Migration, SchemaBuilder } from '@arikajs/database';
47
+ return `import { Migration, SchemaBuilder } from 'arikajs';
48
48
 
49
49
  export default class ${className} extends Migration {
50
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"MakeMigrationCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeMigrationCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB;;GAEG;AACH,MAAa,oBAAqB,SAAQ,iBAAO;IAAjD;;QACW,cAAS,GAAG,uBAAuB,CAAC;QACpC,gBAAW,GAAG,6BAA6B,CAAC;IA4DvD,CAAC;IA1DU,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1C,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;YAC3C,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YACjD,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YAC3C,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,KAAK,CAAC;QAC3C,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAC;QAEtE,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAChC,YAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEhC,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACK,OAAO,CAAC,IAAY;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE5F,OAAO;;uBAEQ,SAAS;;;;;;;;;;;;;;;;;;;CAmB/B,CAAC;IACE,CAAC;CACJ;AA9DD,oDA8DC"}
1
+ {"version":3,"file":"MakeMigrationCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeMigrationCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB;;GAEG;AACH,MAAa,oBAAqB,SAAQ,iBAAO;IAAjD;;QACW,cAAS,GAAG,uBAAuB,CAAC;QACpC,gBAAW,GAAG,6BAA6B,CAAC;IA4DvD,CAAC;IA1DU,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC1C,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,GAAG,GAAG;YACjD,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG;YACvD,IAAI,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG;YAChD,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YAC3C,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;YAC7C,IAAI,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,GAAG,SAAS,IAAI,IAAI,KAAK,CAAC;QAC3C,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,qBAAqB,CAAC,CAAC;QAEtE,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAChC,YAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEhC,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;IACpE,CAAC;IAED;;OAEG;IACK,OAAO,CAAC,IAAY;QACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAE5F,OAAO;;uBAEQ,SAAS;;;;;;;;;;;;;;;;;;;CAmB/B,CAAC;IACE,CAAC;CACJ;AA9DD,oDA8DC"}
@@ -0,0 +1,26 @@
1
+ import { Command } from '@arikajs/console';
2
+ /**
3
+ * Command to generate a new model.
4
+ *
5
+ * Usage:
6
+ * arika make:model User
7
+ * arika make:model User --migration
8
+ *
9
+ * Generates:
10
+ * app/Models/User.ts
11
+ * (optionally) database/migrations/YYYYMMDDHHMMSS_create_users_table.ts
12
+ */
13
+ export declare class MakeModelCommand extends Command {
14
+ signature: string;
15
+ description: string;
16
+ handle(): Promise<void>;
17
+ private getModelStub;
18
+ private createMigration;
19
+ private createController;
20
+ /**
21
+ * Convert a PascalCase model name to a snake_case plural table name.
22
+ * e.g. User → users, BlogPost → blog_posts, OrderItem → order_items
23
+ */
24
+ private toTableName;
25
+ }
26
+ //# sourceMappingURL=MakeModelCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeModelCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/MakeModelCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,SAAQ,OAAO;IAClC,SAAS,SAA2D;IACpE,WAAW,SAAiC;IAEtC,MAAM;IAmCnB,OAAO,CAAC,YAAY;IAgCpB,OAAO,CAAC,eAAe;IA6CvB,OAAO,CAAC,gBAAgB;IA+DxB;;;OAGG;IACH,OAAO,CAAC,WAAW;CAKtB"}
@@ -0,0 +1,193 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MakeModelCommand = void 0;
7
+ const console_1 = require("@arikajs/console");
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ /**
11
+ * Command to generate a new model.
12
+ *
13
+ * Usage:
14
+ * arika make:model User
15
+ * arika make:model User --migration
16
+ *
17
+ * Generates:
18
+ * app/Models/User.ts
19
+ * (optionally) database/migrations/YYYYMMDDHHMMSS_create_users_table.ts
20
+ */
21
+ class MakeModelCommand extends console_1.Command {
22
+ constructor() {
23
+ super(...arguments);
24
+ this.signature = 'make:model {name} {--migration} {--controller} {--mc}';
25
+ this.description = 'Create a new Eloquent model';
26
+ }
27
+ async handle() {
28
+ const name = this.argument('name');
29
+ if (!name) {
30
+ this.error('Model name is required.');
31
+ return;
32
+ }
33
+ // Create the model
34
+ const modelsDir = path_1.default.join(process.cwd(), 'app/Models');
35
+ if (!fs_1.default.existsSync(modelsDir)) {
36
+ fs_1.default.mkdirSync(modelsDir, { recursive: true });
37
+ }
38
+ const fileName = `${name}.ts`;
39
+ const filePath = path_1.default.join(modelsDir, fileName);
40
+ if (fs_1.default.existsSync(filePath)) {
41
+ this.error(`Model already exists: app/Models/${fileName}`);
42
+ }
43
+ else {
44
+ fs_1.default.writeFileSync(filePath, this.getModelStub(name));
45
+ this.success(`Model created: app/Models/${fileName}`);
46
+ }
47
+ // Create migration if requested
48
+ if (this.option('migration') || this.option('mc')) {
49
+ this.createMigration(name);
50
+ }
51
+ // Create controller if requested
52
+ if (this.option('controller') || this.option('mc')) {
53
+ this.createController(name);
54
+ }
55
+ }
56
+ getModelStub(name) {
57
+ const tableName = this.toTableName(name);
58
+ return `import { Model } from 'arikajs';
59
+
60
+ export class ${name} extends Model {
61
+ protected static table = '${tableName}';
62
+
63
+ /**
64
+ * The attributes that are mass assignable.
65
+ */
66
+ protected fillable: string[] = [
67
+ //
68
+ ];
69
+
70
+ /**
71
+ * The attributes that should be hidden for serialization.
72
+ */
73
+ protected hidden: string[] = [
74
+ //
75
+ ];
76
+
77
+ /**
78
+ * The attributes that should be cast.
79
+ */
80
+ protected casts: Record<string, 'string' | 'boolean' | 'object' | 'int' | 'integer' | 'real' | 'float' | 'double' | 'bool' | 'array' | 'json' | 'date' | 'datetime' | 'timestamp'> = {
81
+ //
82
+ };
83
+ }
84
+ `;
85
+ }
86
+ createMigration(name) {
87
+ const tableName = this.toTableName(name);
88
+ const migrationsDir = path_1.default.join(process.cwd(), 'database/migrations');
89
+ if (!fs_1.default.existsSync(migrationsDir)) {
90
+ fs_1.default.mkdirSync(migrationsDir, { recursive: true });
91
+ }
92
+ const date = new Date();
93
+ const timestamp = date.getFullYear().toString() + '_' +
94
+ (date.getMonth() + 1).toString().padStart(2, '0') + '_' +
95
+ date.getDate().toString().padStart(2, '0') + '_' +
96
+ date.getHours().toString().padStart(2, '0') +
97
+ date.getMinutes().toString().padStart(2, '0') +
98
+ date.getSeconds().toString().padStart(2, '0');
99
+ const migrationFileName = `${timestamp}_create_${tableName}_table.ts`;
100
+ const migrationPath = path_1.default.join(migrationsDir, migrationFileName);
101
+ const stub = `import { Migration, SchemaBuilder } from 'arikajs';
102
+
103
+ export default class Create${name}sTable extends Migration {
104
+ /**
105
+ * Run the migrations.
106
+ */
107
+ public async up(schema: SchemaBuilder): Promise<void> {
108
+ await schema.create('${tableName}', (table) => {
109
+ table.id();
110
+ table.timestamps();
111
+ });
112
+ }
113
+
114
+ /**
115
+ * Reverse the migrations.
116
+ */
117
+ public async down(schema: SchemaBuilder): Promise<void> {
118
+ await schema.dropIfExists('${tableName}');
119
+ }
120
+ }
121
+ `;
122
+ fs_1.default.writeFileSync(migrationPath, stub);
123
+ this.success(`Migration created: database/migrations/${migrationFileName}`);
124
+ }
125
+ createController(name) {
126
+ const controllerName = `${name}Controller`;
127
+ const dir = path_1.default.join(process.cwd(), 'app/Http/Controllers');
128
+ if (!fs_1.default.existsSync(dir)) {
129
+ fs_1.default.mkdirSync(dir, { recursive: true });
130
+ }
131
+ const fileName = `${controllerName}.ts`;
132
+ const filePath = path_1.default.join(dir, fileName);
133
+ if (fs_1.default.existsSync(filePath)) {
134
+ this.error(`Controller already exists: app/Http/Controllers/${fileName}`);
135
+ return;
136
+ }
137
+ const stub = `import { Request, Response } from 'arikajs';
138
+
139
+ export class ${controllerName} {
140
+ /**
141
+ * Display a listing of the resource.
142
+ */
143
+ public async index(req: Request, res: Response) {
144
+ return res.json({ message: 'List of resources' });
145
+ }
146
+
147
+ /**
148
+ * Store a newly created resource in storage.
149
+ */
150
+ public async store(req: Request, res: Response) {
151
+ return res.json({ message: 'Resource created' }, 201);
152
+ }
153
+
154
+ /**
155
+ * Display the specified resource.
156
+ */
157
+ public async show(req: Request, res: Response) {
158
+ const id = req.param('id');
159
+ return res.json({ message: \`Showing resource \${id}\` });
160
+ }
161
+
162
+ /**
163
+ * Update the specified resource in storage.
164
+ */
165
+ public async update(req: Request, res: Response) {
166
+ const id = req.param('id');
167
+ return res.json({ message: \`Resource \${id} updated\` });
168
+ }
169
+
170
+ /**
171
+ * Remove the specified resource from storage.
172
+ */
173
+ public async destroy(req: Request, res: Response) {
174
+ const id = req.param('id');
175
+ return res.json({ message: \`Resource \${id} deleted\` });
176
+ }
177
+ }
178
+ `;
179
+ fs_1.default.writeFileSync(filePath, stub);
180
+ this.success(`Controller created: app/Http/Controllers/${fileName}`);
181
+ }
182
+ /**
183
+ * Convert a PascalCase model name to a snake_case plural table name.
184
+ * e.g. User → users, BlogPost → blog_posts, OrderItem → order_items
185
+ */
186
+ toTableName(name) {
187
+ return name
188
+ .replace(/([a-z])([A-Z])/g, '$1_$2')
189
+ .toLowerCase() + 's';
190
+ }
191
+ }
192
+ exports.MakeModelCommand = MakeModelCommand;
193
+ //# sourceMappingURL=MakeModelCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeModelCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeModelCommand.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Command } from '@arikajs/console';
2
+ /**
3
+ * Command to generate a new service provider.
4
+ *
5
+ * Usage:
6
+ * arika make:provider PaymentServiceProvider
7
+ *
8
+ * Generates:
9
+ * app/Providers/PaymentServiceProvider.ts
10
+ */
11
+ export declare class MakeProviderCommand extends Command {
12
+ signature: string;
13
+ description: string;
14
+ handle(): Promise<void>;
15
+ private getStub;
16
+ }
17
+ //# sourceMappingURL=MakeProviderCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeProviderCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/MakeProviderCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C;;;;;;;;GAQG;AACH,qBAAa,mBAAoB,SAAQ,OAAO;IACrC,SAAS,SAA0B;IACnC,WAAW,SAAmC;IAExC,MAAM;IAyBnB,OAAO,CAAC,OAAO;CA0BlB"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MakeProviderCommand = void 0;
7
+ const console_1 = require("@arikajs/console");
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ /**
11
+ * Command to generate a new service provider.
12
+ *
13
+ * Usage:
14
+ * arika make:provider PaymentServiceProvider
15
+ *
16
+ * Generates:
17
+ * app/Providers/PaymentServiceProvider.ts
18
+ */
19
+ class MakeProviderCommand extends console_1.Command {
20
+ constructor() {
21
+ super(...arguments);
22
+ this.signature = 'make:provider {name}';
23
+ this.description = 'Create a new service provider';
24
+ }
25
+ async handle() {
26
+ const name = this.argument('name');
27
+ if (!name) {
28
+ this.error('Provider name is required.');
29
+ return;
30
+ }
31
+ const dir = path_1.default.join(process.cwd(), 'app/Providers');
32
+ if (!fs_1.default.existsSync(dir)) {
33
+ fs_1.default.mkdirSync(dir, { recursive: true });
34
+ }
35
+ const fileName = `${name}.ts`;
36
+ const filePath = path_1.default.join(dir, fileName);
37
+ if (fs_1.default.existsSync(filePath)) {
38
+ this.error(`Provider already exists: app/Providers/${fileName}`);
39
+ return;
40
+ }
41
+ fs_1.default.writeFileSync(filePath, this.getStub(name));
42
+ this.success(`Provider created: app/Providers/${fileName}`);
43
+ }
44
+ getStub(name) {
45
+ return `import { ServiceProvider } from '@arikajs/foundation';
46
+
47
+ export class ${name} extends ServiceProvider {
48
+ /**
49
+ * Register any application services.
50
+ *
51
+ * This is called before any boot() methods run.
52
+ * Use this to bind services into the container.
53
+ */
54
+ public async register(): Promise<void> {
55
+ //
56
+ }
57
+
58
+ /**
59
+ * Bootstrap any application services.
60
+ *
61
+ * This is called after all providers have been registered.
62
+ * You can safely resolve services from the container here.
63
+ */
64
+ public async boot(): Promise<void> {
65
+ //
66
+ }
67
+ }
68
+ `;
69
+ }
70
+ }
71
+ exports.MakeProviderCommand = MakeProviderCommand;
72
+ //# sourceMappingURL=MakeProviderCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeProviderCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeProviderCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB;;;;;;;;GAQG;AACH,MAAa,mBAAoB,SAAQ,iBAAO;IAAhD;;QACW,cAAS,GAAG,sBAAsB,CAAC;QACnC,gBAAW,GAAG,+BAA+B,CAAC;IAqDzD,CAAC;IAnDU,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YACzC,OAAO;QACX,CAAC;QAED,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,eAAe,CAAC,CAAC;QAEtD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,QAAQ,GAAG,GAAG,IAAI,KAAK,CAAC;QAC9B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAE1C,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,0CAA0C,QAAQ,EAAE,CAAC,CAAC;YACjE,OAAO;QACX,CAAC;QAED,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IAChE,CAAC;IAEO,OAAO,CAAC,IAAY;QACxB,OAAO;;eAEA,IAAI;;;;;;;;;;;;;;;;;;;;;CAqBlB,CAAC;IACE,CAAC;CACJ;AAvDD,kDAuDC"}
@@ -0,0 +1,7 @@
1
+ import { Command } from '@arikajs/console';
2
+ export declare class MakeViewCommand extends Command {
3
+ signature: string;
4
+ description: string;
5
+ handle(): Promise<void>;
6
+ }
7
+ //# sourceMappingURL=MakeViewCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeViewCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/MakeViewCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,qBAAa,eAAgB,SAAQ,OAAO;IACjC,SAAS,SAAsB;IAC/B,WAAW,SAAsC;IAE3C,MAAM;CAwBtB"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MakeViewCommand = void 0;
7
+ const console_1 = require("@arikajs/console");
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
10
+ class MakeViewCommand extends console_1.Command {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.signature = 'make:view {name}';
14
+ this.description = 'Create a new Arika view template';
15
+ }
16
+ async handle() {
17
+ const name = this.argument('name');
18
+ const cwd = process.cwd();
19
+ const viewPath = path_1.default.join(cwd, 'resources', 'views', name.replace(/\./g, path_1.default.sep) + '.ark.html');
20
+ const dir = path_1.default.dirname(viewPath);
21
+ if (!fs_1.default.existsSync(dir)) {
22
+ fs_1.default.mkdirSync(dir, { recursive: true });
23
+ }
24
+ if (fs_1.default.existsSync(viewPath)) {
25
+ this.error('View already exists!');
26
+ return;
27
+ }
28
+ const stub = `<div>
29
+ <!-- Your view content here -->
30
+ </div>
31
+ `;
32
+ fs_1.default.writeFileSync(viewPath, stub);
33
+ this.success(`View created successfully: resources/views/${name}.ark.html`);
34
+ }
35
+ }
36
+ exports.MakeViewCommand = MakeViewCommand;
37
+ //# sourceMappingURL=MakeViewCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MakeViewCommand.js","sourceRoot":"","sources":["../../../src/Commands/MakeViewCommand.ts"],"names":[],"mappings":";;;;;;AAAA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,eAAgB,SAAQ,iBAAO;IAA5C;;QACW,cAAS,GAAG,kBAAkB,CAAC;QAC/B,gBAAW,GAAG,kCAAkC,CAAC;IA0B5D,CAAC;IAxBU,KAAK,CAAC,MAAM;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,cAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;QACnG,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEnC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,YAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACnC,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG;;;CAGpB,CAAC;QAEM,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,8CAA8C,IAAI,WAAW,CAAC,CAAC;IAChF,CAAC;CACJ;AA5BD,0CA4BC"}
@@ -0,0 +1,10 @@
1
+ import { DatabaseCommand } from './DatabaseCommand';
2
+ /**
3
+ * Command to drop all tables and re-run all migrations
4
+ */
5
+ export declare class MigrateFreshCommand extends DatabaseCommand {
6
+ signature: string;
7
+ description: string;
8
+ handle(): Promise<void>;
9
+ }
10
+ //# sourceMappingURL=MigrateFreshCommand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrateFreshCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/MigrateFreshCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,eAAe;IAC7C,SAAS,SAA4B;IACrC,WAAW,SAA+C;IAEpD,MAAM;CAkFtB"}
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.MigrateFreshCommand = void 0;
40
+ const DatabaseCommand_1 = require("./DatabaseCommand");
41
+ const path_1 = __importDefault(require("path"));
42
+ /**
43
+ * Command to drop all tables and re-run all migrations
44
+ */
45
+ class MigrateFreshCommand extends DatabaseCommand_1.DatabaseCommand {
46
+ constructor() {
47
+ super(...arguments);
48
+ this.signature = 'migrate:fresh {--seed}';
49
+ this.description = 'Drop all tables and re-run all migrations';
50
+ }
51
+ async handle() {
52
+ this.writeln('');
53
+ this.info(' 🔄 Refreshing database: dropping all tables...');
54
+ try {
55
+ const db = await this.getDatabaseManager();
56
+ const connection = await db.connection();
57
+ const grammar = connection.getSchemaGrammar().constructor.name;
58
+ let tables = [];
59
+ // Fetch table names based on driver
60
+ if (grammar === 'MySQLGrammar') {
61
+ const results = await connection.query('SHOW TABLES');
62
+ if (results.length > 0) {
63
+ const key = Object.keys(results[0])[0];
64
+ tables = results.map((r) => r[key]);
65
+ }
66
+ }
67
+ else if (grammar === 'PostgreSQLGrammar') {
68
+ const results = await connection.query("SELECT tablename FROM pg_catalog.pg_tables WHERE schemaname = 'public'");
69
+ tables = results.map((r) => r.tablename);
70
+ }
71
+ else if (grammar === 'SQLiteGrammar') {
72
+ const results = await connection.query("SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'");
73
+ tables = results.map((r) => r.name);
74
+ }
75
+ if (tables.length > 0) {
76
+ // Disable foreign key checks
77
+ if (grammar === 'MySQLGrammar')
78
+ await connection.query('SET FOREIGN_KEY_CHECKS = 0');
79
+ if (grammar === 'SQLiteGrammar')
80
+ await connection.query('PRAGMA foreign_keys = OFF');
81
+ for (const table of tables) {
82
+ this.comment(` Dropping table: ${table}`);
83
+ if (grammar === 'PostgreSQLGrammar') {
84
+ // Use CASCADE for Postgres to handle dependencies
85
+ await connection.query(`DROP TABLE IF EXISTS "${table}" CASCADE`);
86
+ }
87
+ else {
88
+ await db.schema().dropIfExists(table);
89
+ }
90
+ }
91
+ // Re-enable foreign key checks
92
+ if (grammar === 'MySQLGrammar')
93
+ await connection.query('SET FOREIGN_KEY_CHECKS = 1');
94
+ if (grammar === 'SQLiteGrammar')
95
+ await connection.query('PRAGMA foreign_keys = ON');
96
+ this.success(` ✅ Dropped ${tables.length} tables.`);
97
+ }
98
+ else {
99
+ this.comment(' â„šī¸ No tables found to drop.');
100
+ }
101
+ this.writeln('');
102
+ this.info(' 🚀 Running migrations...');
103
+ const { Migrator } = await Promise.resolve().then(() => __importStar(require('@arikajs/database')));
104
+ const migrationsPath = path_1.default.join(process.cwd(), 'database/migrations');
105
+ const migrator = new Migrator(db, migrationsPath);
106
+ await migrator.migrate();
107
+ // Run seeders if requested
108
+ if (this.option('seed')) {
109
+ this.writeln('');
110
+ this.info(' 📝 Seeding database...');
111
+ const { SeedRunner } = await Promise.resolve().then(() => __importStar(require('@arikajs/database')));
112
+ const seedersPath = path_1.default.join(process.cwd(), 'database/seeders');
113
+ const runner = new SeedRunner(db, seedersPath);
114
+ await runner.run();
115
+ this.success(' ✅ Seeding completed.');
116
+ }
117
+ await db.closeAll();
118
+ this.writeln('');
119
+ this.success(' ✨ Database refreshed successfully!');
120
+ }
121
+ catch (error) {
122
+ this.writeln('');
123
+ this.error(` ❌ Fresh migration failed: ${error.message}`);
124
+ process.exit(1);
125
+ }
126
+ }
127
+ }
128
+ exports.MigrateFreshCommand = MigrateFreshCommand;
129
+ //# sourceMappingURL=MigrateFreshCommand.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MigrateFreshCommand.js","sourceRoot":"","sources":["../../../src/Commands/MigrateFreshCommand.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NewCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/NewCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAK3C,qBAAa,UAAW,SAAQ,OAAO;IAC5B,SAAS,SAAgB;IACzB,WAAW,SAAsC;IAE3C,MAAM;IAsDnB,OAAO,CAAC,mBAAmB;CAiB9B"}
1
+ {"version":3,"file":"NewCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/NewCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAK3C,qBAAa,UAAW,SAAQ,OAAO;IAC5B,SAAS,SAAgB;IACzB,WAAW,SAAsC;IAE3C,MAAM;YAqDL,mBAAmB;CAyFpC"}