@arikajs/cli 0.0.4 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +99 -6
- package/dist/bin/arika.js +2 -2
- package/dist/bin/arika.js.map +1 -1
- package/dist/src/ApplicationLoader.d.ts +5 -0
- package/dist/src/ApplicationLoader.d.ts.map +1 -1
- package/dist/src/ApplicationLoader.js +24 -2
- package/dist/src/ApplicationLoader.js.map +1 -1
- package/dist/src/Bootstrap.d.ts.map +1 -1
- package/dist/src/Bootstrap.js +35 -0
- package/dist/src/Bootstrap.js.map +1 -1
- package/dist/src/Commands/AuthApiInstallCommand.d.ts +24 -0
- package/dist/src/Commands/AuthApiInstallCommand.d.ts.map +1 -0
- package/dist/src/Commands/AuthApiInstallCommand.js +751 -0
- package/dist/src/Commands/AuthApiInstallCommand.js.map +1 -0
- package/dist/src/Commands/AuthInstallCommand.d.ts +7 -0
- package/dist/src/Commands/AuthInstallCommand.d.ts.map +1 -0
- package/dist/src/Commands/AuthInstallCommand.js +46 -0
- package/dist/src/Commands/AuthInstallCommand.js.map +1 -0
- package/dist/src/Commands/AuthWebInstallCommand.d.ts +31 -0
- package/dist/src/Commands/AuthWebInstallCommand.d.ts.map +1 -0
- package/dist/src/Commands/AuthWebInstallCommand.js +1100 -0
- package/dist/src/Commands/AuthWebInstallCommand.js.map +1 -0
- package/dist/src/Commands/BenchmarkCommand.d.ts +7 -0
- package/dist/src/Commands/BenchmarkCommand.d.ts.map +1 -0
- package/dist/src/Commands/BenchmarkCommand.js +25 -0
- package/dist/src/Commands/BenchmarkCommand.js.map +1 -0
- package/dist/src/Commands/CacheClearCommand.d.ts +7 -0
- package/dist/src/Commands/CacheClearCommand.d.ts.map +1 -0
- package/dist/src/Commands/CacheClearCommand.js +33 -0
- package/dist/src/Commands/CacheClearCommand.js.map +1 -0
- package/dist/src/Commands/CacheTableCommand.d.ts.map +1 -1
- package/dist/src/Commands/CacheTableCommand.js +21 -9
- package/dist/src/Commands/CacheTableCommand.js.map +1 -1
- package/dist/src/Commands/ConfigCacheCommand.d.ts +7 -0
- package/dist/src/Commands/ConfigCacheCommand.d.ts.map +1 -0
- package/dist/src/Commands/ConfigCacheCommand.js +86 -0
- package/dist/src/Commands/ConfigCacheCommand.js.map +1 -0
- package/dist/src/Commands/ConfigClearCommand.d.ts +7 -0
- package/dist/src/Commands/ConfigClearCommand.d.ts.map +1 -0
- package/dist/src/Commands/ConfigClearCommand.js +29 -0
- package/dist/src/Commands/ConfigClearCommand.js.map +1 -0
- package/dist/src/Commands/DocsGenerateCommand.d.ts +0 -1
- package/dist/src/Commands/DocsGenerateCommand.d.ts.map +1 -1
- package/dist/src/Commands/DocsGenerateCommand.js +68 -77
- package/dist/src/Commands/DocsGenerateCommand.js.map +1 -1
- package/dist/src/Commands/EnvValidateCommand.d.ts +7 -0
- package/dist/src/Commands/EnvValidateCommand.d.ts.map +1 -0
- package/dist/src/Commands/EnvValidateCommand.js +51 -0
- package/dist/src/Commands/EnvValidateCommand.js.map +1 -0
- package/dist/src/Commands/ListCommand.d.ts.map +1 -1
- package/dist/src/Commands/ListCommand.js +15 -8
- package/dist/src/Commands/ListCommand.js.map +1 -1
- package/dist/src/Commands/MakeCommand.d.ts +7 -0
- package/dist/src/Commands/MakeCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeCommand.js +110 -0
- package/dist/src/Commands/MakeCommand.js.map +1 -0
- package/dist/src/Commands/MakeCommandCommand.d.ts +20 -0
- package/dist/src/Commands/MakeCommandCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeCommandCommand.js +82 -0
- package/dist/src/Commands/MakeCommandCommand.js.map +1 -0
- package/dist/src/Commands/MakeControllerCommand.d.ts +17 -0
- package/dist/src/Commands/MakeControllerCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeControllerCommand.js +90 -0
- package/dist/src/Commands/MakeControllerCommand.js.map +1 -0
- package/dist/src/Commands/MakeEventCommand.d.ts +8 -0
- package/dist/src/Commands/MakeEventCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeEventCommand.js +48 -0
- package/dist/src/Commands/MakeEventCommand.js.map +1 -0
- package/dist/src/Commands/MakeJobCommand.d.ts +8 -0
- package/dist/src/Commands/MakeJobCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeJobCommand.js +55 -0
- package/dist/src/Commands/MakeJobCommand.js.map +1 -0
- package/dist/src/Commands/MakeListenerCommand.d.ts +8 -0
- package/dist/src/Commands/MakeListenerCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeListenerCommand.js +55 -0
- package/dist/src/Commands/MakeListenerCommand.js.map +1 -0
- package/dist/src/Commands/MakeMiddlewareCommand.d.ts +17 -0
- package/dist/src/Commands/MakeMiddlewareCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeMiddlewareCommand.js +69 -0
- package/dist/src/Commands/MakeMiddlewareCommand.js.map +1 -0
- package/dist/src/Commands/MakeMigrationCommand.js +4 -4
- package/dist/src/Commands/MakeMigrationCommand.js.map +1 -1
- package/dist/src/Commands/MakeModelCommand.d.ts +26 -0
- package/dist/src/Commands/MakeModelCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeModelCommand.js +193 -0
- package/dist/src/Commands/MakeModelCommand.js.map +1 -0
- package/dist/src/Commands/MakeProviderCommand.d.ts +17 -0
- package/dist/src/Commands/MakeProviderCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeProviderCommand.js +72 -0
- package/dist/src/Commands/MakeProviderCommand.js.map +1 -0
- package/dist/src/Commands/MakeViewCommand.d.ts +7 -0
- package/dist/src/Commands/MakeViewCommand.d.ts.map +1 -0
- package/dist/src/Commands/MakeViewCommand.js +37 -0
- package/dist/src/Commands/MakeViewCommand.js.map +1 -0
- package/dist/src/Commands/MigrateFreshCommand.d.ts +10 -0
- package/dist/src/Commands/MigrateFreshCommand.d.ts.map +1 -0
- package/dist/src/Commands/MigrateFreshCommand.js +129 -0
- package/dist/src/Commands/MigrateFreshCommand.js.map +1 -0
- package/dist/src/Commands/NewCommand.d.ts.map +1 -1
- package/dist/src/Commands/NewCommand.js +92 -24
- package/dist/src/Commands/NewCommand.js.map +1 -1
- package/dist/src/Commands/QueueFailedCommand.d.ts +7 -0
- package/dist/src/Commands/QueueFailedCommand.d.ts.map +1 -0
- package/dist/src/Commands/QueueFailedCommand.js +30 -0
- package/dist/src/Commands/QueueFailedCommand.js.map +1 -0
- package/dist/src/Commands/QueueFailedTableCommand.d.ts +7 -0
- package/dist/src/Commands/QueueFailedTableCommand.d.ts.map +1 -0
- package/dist/src/Commands/QueueFailedTableCommand.js +55 -0
- package/dist/src/Commands/QueueFailedTableCommand.js.map +1 -0
- package/dist/src/Commands/QueueFlushCommand.d.ts +7 -0
- package/dist/src/Commands/QueueFlushCommand.d.ts.map +1 -0
- package/dist/src/Commands/QueueFlushCommand.js +21 -0
- package/dist/src/Commands/QueueFlushCommand.js.map +1 -0
- package/dist/src/Commands/QueueRetryCommand.d.ts +7 -0
- package/dist/src/Commands/QueueRetryCommand.d.ts.map +1 -0
- package/dist/src/Commands/QueueRetryCommand.js +36 -0
- package/dist/src/Commands/QueueRetryCommand.js.map +1 -0
- package/dist/src/Commands/QueueTableCommand.d.ts.map +1 -1
- package/dist/src/Commands/QueueTableCommand.js +19 -13
- package/dist/src/Commands/QueueTableCommand.js.map +1 -1
- package/dist/src/Commands/QueueWorkCommand.d.ts +8 -0
- package/dist/src/Commands/QueueWorkCommand.d.ts.map +1 -0
- package/dist/src/Commands/QueueWorkCommand.js +88 -0
- package/dist/src/Commands/QueueWorkCommand.js.map +1 -0
- package/dist/src/Commands/RouteListCommand.d.ts +7 -0
- package/dist/src/Commands/RouteListCommand.d.ts.map +1 -0
- package/dist/src/Commands/RouteListCommand.js +108 -0
- package/dist/src/Commands/RouteListCommand.js.map +1 -0
- package/dist/src/Commands/ScheduleRunCommand.d.ts +9 -0
- package/dist/src/Commands/ScheduleRunCommand.d.ts.map +1 -0
- package/dist/src/Commands/ScheduleRunCommand.js +80 -0
- package/dist/src/Commands/ScheduleRunCommand.js.map +1 -0
- package/dist/src/Commands/ScheduleWorkCommand.d.ts +9 -0
- package/dist/src/Commands/ScheduleWorkCommand.d.ts.map +1 -0
- package/dist/src/Commands/ScheduleWorkCommand.js +81 -0
- package/dist/src/Commands/ScheduleWorkCommand.js.map +1 -0
- package/dist/src/Commands/ServeCommand.d.ts +1 -0
- package/dist/src/Commands/ServeCommand.d.ts.map +1 -1
- package/dist/src/Commands/ServeCommand.js +111 -21
- package/dist/src/Commands/ServeCommand.js.map +1 -1
- package/dist/src/TemplateManager.d.ts +4 -0
- package/dist/src/TemplateManager.d.ts.map +1 -1
- package/dist/src/TemplateManager.js +35 -6
- package/dist/src/TemplateManager.js.map +1 -1
- package/dist/templates/app/.env.example +47 -0
- package/dist/templates/app/README.md +62 -0
- package/dist/templates/app/app/Exceptions/Handler.ts +19 -0
- package/dist/templates/app/app/Http/Controllers/UserController.ts +90 -0
- package/dist/templates/app/app/Http/Kernel.ts +43 -0
- package/dist/templates/app/app/Http/Middleware/Authenticate.ts +10 -0
- package/dist/templates/app/app/Http/Middleware/EnsureEmailIsVerified.ts +18 -0
- package/dist/templates/app/app/Http/Middleware/ExampleMiddleware.ts +12 -0
- package/dist/templates/app/app/Http/Middleware/RedirectIfAuthenticated.ts +18 -0
- package/dist/templates/app/app/Http/Middleware/TrimStrings.ts +12 -0
- package/dist/templates/app/app/Http/Middleware/TrustProxies.ts +23 -0
- package/dist/templates/app/app/Http/Middleware/VerifyCsrfToken.ts +10 -0
- package/dist/templates/app/app/Models/User.ts +15 -0
- package/dist/templates/app/app/Providers/AppServiceProvider.ts +17 -0
- package/dist/templates/app/app/Providers/RouteServiceProvider.ts +35 -0
- package/dist/templates/app/bootstrap/app.ts +41 -0
- package/dist/templates/app/config/app.ts +10 -0
- package/dist/templates/app/config/cache.ts +44 -0
- package/dist/templates/app/config/database.ts +63 -0
- package/dist/templates/app/config/filesystems.ts +35 -0
- package/dist/templates/app/config/http.ts +6 -0
- package/dist/templates/app/config/logging.ts +37 -0
- package/dist/templates/app/config/mail.ts +29 -0
- package/dist/templates/app/config/queue.ts +42 -0
- 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
- package/dist/templates/app/database/migrations/2024_01_01_000002_create_password_resets_table.ts +22 -0
- package/dist/templates/app/database/migrations/2024_01_01_000003_create_failed_jobs_table.ts +25 -0
- package/dist/templates/app/package.json +22 -0
- package/dist/templates/app/package.json.backup +22 -0
- package/dist/templates/app/public/assets/img/favicon.png +0 -0
- package/dist/templates/app/public/assets/img/logo.png +0 -0
- package/dist/templates/app/resources/views/errors/401.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/403.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/404.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/419.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/429.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/500.ark.html +320 -0
- package/dist/templates/app/resources/views/errors/503.ark.html +320 -0
- package/dist/templates/app/resources/views/welcome.ark.html +846 -0
- package/dist/templates/app/routes/api.ts +39 -0
- package/dist/templates/app/routes/web.ts +10 -0
- package/dist/templates/app/server.ts +15 -0
- package/dist/templates/app/tsconfig.json +27 -0
- package/package.json +16 -10
- package/templates/app/.env.example +2 -2
- package/templates/app/README.md +62 -0
- package/templates/app/app/Exceptions/Handler.ts +19 -0
- package/templates/app/app/Http/Controllers/UserController.ts +90 -0
- package/templates/app/app/Http/Kernel.ts +39 -14
- package/templates/app/app/Http/Middleware/Authenticate.ts +10 -0
- package/templates/app/app/Http/Middleware/EnsureEmailIsVerified.ts +18 -0
- package/templates/app/app/Http/Middleware/ExampleMiddleware.ts +12 -0
- package/templates/app/app/Http/Middleware/RedirectIfAuthenticated.ts +18 -0
- package/templates/app/app/Http/Middleware/TrimStrings.ts +12 -0
- package/templates/app/app/Http/Middleware/TrustProxies.ts +23 -0
- package/templates/app/app/Http/Middleware/VerifyCsrfToken.ts +10 -0
- package/templates/app/app/Models/User.ts +5 -5
- package/templates/app/app/Providers/AppServiceProvider.ts +17 -0
- package/templates/app/app/Providers/RouteServiceProvider.ts +35 -0
- package/templates/app/bootstrap/app.ts +30 -2
- package/templates/app/config/app.ts +7 -6
- package/templates/app/config/cache.ts +14 -7
- package/templates/app/config/database.ts +48 -21
- package/templates/app/config/filesystems.ts +11 -9
- package/templates/app/config/http.ts +3 -2
- package/templates/app/config/logging.ts +6 -4
- package/templates/app/config/mail.ts +10 -8
- package/templates/app/config/queue.ts +6 -4
- package/templates/app/database/migrations/2024_01_01_000001_create_users_table.ts +25 -0
- package/templates/app/database/migrations/2024_01_01_000002_create_password_resets_table.ts +22 -0
- package/templates/app/database/migrations/2024_01_01_000003_create_failed_jobs_table.ts +25 -0
- package/templates/app/package.json +4 -3
- package/templates/app/package.json.backup +22 -0
- package/templates/app/public/assets/img/favicon.png +0 -0
- package/templates/app/public/assets/img/logo.png +0 -0
- package/templates/app/resources/views/welcome.ark.html +846 -0
- package/templates/app/routes/api.ts +8 -3
- package/templates/app/routes/web.ts +8 -4
- package/templates/app/server.ts +3 -4
- package/templates/app/tsconfig.json +12 -0
- package/dist/tests/Cli.test.d.ts +0 -2
- package/dist/tests/Cli.test.d.ts.map +0 -1
- package/dist/tests/Cli.test.js +0 -16
- package/dist/tests/Cli.test.js.map +0 -1
- package/templates/app/app/Controllers/UserController.ts +0 -88
- package/templates/app/resources/views/welcome.html +0 -470
|
@@ -55,54 +55,122 @@ class NewCommand extends console_1.Command {
|
|
|
55
55
|
this.error(`Directory "${name}" already exists.`);
|
|
56
56
|
return;
|
|
57
57
|
}
|
|
58
|
-
const { default: inquirer } = await Promise.resolve().then(() => __importStar(require('inquirer')));
|
|
59
58
|
const { TemplateManager } = await Promise.resolve().then(() => __importStar(require('../TemplateManager')));
|
|
60
59
|
const templateManager = new TemplateManager();
|
|
61
|
-
this.
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
name: 'install',
|
|
66
|
-
message: 'Would you like to install dependencies automatically?',
|
|
67
|
-
default: true
|
|
68
|
-
}
|
|
69
|
-
]);
|
|
70
|
-
const shouldInstall = answers.install;
|
|
60
|
+
this.writeln('');
|
|
61
|
+
this.info(` 🚀 Creating a new ArikaJS application: ${name}`);
|
|
62
|
+
this.writeln('');
|
|
63
|
+
const shouldInstall = await this.confirm('Would you like to install dependencies automatically?', true);
|
|
71
64
|
try {
|
|
72
65
|
const templatePath = templateManager.resolveTemplatePath();
|
|
73
|
-
this.
|
|
74
|
-
|
|
75
|
-
|
|
66
|
+
await this.task(`Scaffolding project in ${targetDir}`, async () => {
|
|
67
|
+
templateManager.copyTemplate(templatePath, targetDir, name);
|
|
68
|
+
templateManager.setupEnvironmentFiles(targetDir, name);
|
|
69
|
+
});
|
|
76
70
|
if (shouldInstall) {
|
|
77
|
-
this.
|
|
71
|
+
this.writeln('');
|
|
72
|
+
this.info(' 📦 Installing dependencies...');
|
|
73
|
+
this.writeln('');
|
|
78
74
|
await this.installDependencies(targetDir);
|
|
79
75
|
}
|
|
80
|
-
this.
|
|
81
|
-
this.
|
|
82
|
-
this.
|
|
76
|
+
this.writeln('');
|
|
77
|
+
this.success('Project created successfully!');
|
|
78
|
+
this.writeln('');
|
|
79
|
+
this.comment(' Next steps:');
|
|
80
|
+
this.comment(` - cd ${relativePath}`);
|
|
83
81
|
if (!shouldInstall) {
|
|
84
|
-
this.comment(' npm install');
|
|
82
|
+
this.comment(' - npm install');
|
|
85
83
|
}
|
|
86
|
-
this.comment(' npm run dev');
|
|
87
|
-
this.
|
|
84
|
+
this.comment(' - npm run dev');
|
|
85
|
+
this.writeln('');
|
|
86
|
+
this.info(' Happy coding with ArikaJS!');
|
|
87
|
+
this.writeln('');
|
|
88
88
|
}
|
|
89
89
|
catch (error) {
|
|
90
|
+
this.writeln('');
|
|
90
91
|
this.error(`Failed to create project: ${error.message}`);
|
|
91
92
|
}
|
|
92
93
|
}
|
|
93
|
-
installDependencies(targetDir) {
|
|
94
|
+
async installDependencies(targetDir) {
|
|
94
95
|
return new Promise((resolve, reject) => {
|
|
95
|
-
const
|
|
96
|
+
const pkgPath = path_1.default.join(targetDir, 'package.json');
|
|
97
|
+
let pkgObj = null;
|
|
98
|
+
try {
|
|
99
|
+
if (fs_1.default.existsSync(pkgPath)) {
|
|
100
|
+
const pkgStr = fs_1.default.readFileSync(pkgPath, 'utf8');
|
|
101
|
+
pkgObj = JSON.parse(pkgStr);
|
|
102
|
+
const strippedPkg = JSON.parse(pkgStr);
|
|
103
|
+
// Temporarily strip file: references so npm doesn't freeze traversing local deps
|
|
104
|
+
['dependencies', 'devDependencies'].forEach(section => {
|
|
105
|
+
if (strippedPkg[section]) {
|
|
106
|
+
for (const key of Object.keys(strippedPkg[section])) {
|
|
107
|
+
if (strippedPkg[section][key].startsWith('file:')) {
|
|
108
|
+
delete strippedPkg[section][key];
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
fs_1.default.writeFileSync(pkgPath, JSON.stringify(strippedPkg, null, 2));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
catch (e) {
|
|
117
|
+
// Ignore error
|
|
118
|
+
}
|
|
119
|
+
const child = (0, child_process_1.spawn)('npm', [
|
|
120
|
+
'install',
|
|
121
|
+
'--no-package-lock',
|
|
122
|
+
'--legacy-peer-deps',
|
|
123
|
+
'--ignore-scripts',
|
|
124
|
+
'--prefer-offline',
|
|
125
|
+
'--no-audit',
|
|
126
|
+
'--no-fund'
|
|
127
|
+
], {
|
|
96
128
|
cwd: targetDir,
|
|
97
129
|
stdio: 'inherit',
|
|
98
130
|
shell: true
|
|
99
131
|
});
|
|
100
132
|
child.on('close', (code) => {
|
|
133
|
+
if (pkgObj) {
|
|
134
|
+
// Restore original package.json after install completes
|
|
135
|
+
fs_1.default.writeFileSync(pkgPath, JSON.stringify(pkgObj, null, 2));
|
|
136
|
+
// Manually symlink local dependencies into node_modules
|
|
137
|
+
const nodeModulesPath = path_1.default.join(targetDir, 'node_modules');
|
|
138
|
+
if (!fs_1.default.existsSync(nodeModulesPath)) {
|
|
139
|
+
fs_1.default.mkdirSync(nodeModulesPath);
|
|
140
|
+
}
|
|
141
|
+
['dependencies', 'devDependencies'].forEach(section => {
|
|
142
|
+
if (pkgObj[section]) {
|
|
143
|
+
for (const key of Object.keys(pkgObj[section])) {
|
|
144
|
+
const val = pkgObj[section][key];
|
|
145
|
+
if (val.startsWith('file:')) {
|
|
146
|
+
const sourcePath = path_1.default.resolve(targetDir, val.replace('file:', ''));
|
|
147
|
+
const targetLinkPath = path_1.default.join(nodeModulesPath, key);
|
|
148
|
+
// Handle @scoped/packages directories
|
|
149
|
+
const scopeMatch = key.match(/^(@[^/]+)\/(.+)$/);
|
|
150
|
+
if (scopeMatch) {
|
|
151
|
+
const scopeDir = path_1.default.join(nodeModulesPath, scopeMatch[1]);
|
|
152
|
+
if (!fs_1.default.existsSync(scopeDir)) {
|
|
153
|
+
fs_1.default.mkdirSync(scopeDir, { recursive: true });
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
try {
|
|
157
|
+
if (fs_1.default.existsSync(targetLinkPath))
|
|
158
|
+
fs_1.default.unlinkSync(targetLinkPath);
|
|
159
|
+
fs_1.default.symlinkSync(sourcePath, targetLinkPath, 'dir');
|
|
160
|
+
}
|
|
161
|
+
catch (err) {
|
|
162
|
+
// Ignore symlink failure
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
}
|
|
101
169
|
if (code === 0) {
|
|
102
170
|
resolve();
|
|
103
171
|
}
|
|
104
172
|
else {
|
|
105
|
-
reject(new Error(`npm install failed with code ${code}`));
|
|
173
|
+
reject(new Error(`npm install failed with exit code ${code}`));
|
|
106
174
|
}
|
|
107
175
|
});
|
|
108
176
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewCommand.js","sourceRoot":"","sources":["../../../src/Commands/NewCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AACxB,iDAAsC;AAEtC,MAAa,UAAW,SAAQ,iBAAO;IAAvC;;QACW,cAAS,GAAG,YAAY,CAAC;QACzB,gBAAW,GAAG,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"NewCommand.js","sourceRoot":"","sources":["../../../src/Commands/NewCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFailedCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueFailedCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,qBAAa,kBAAmB,SAAQ,OAAO;IACpC,SAAS,SAAkB;IAC3B,WAAW,SAAuC;IAE5C,MAAM;CAmBtB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QueueFailedCommand = void 0;
|
|
4
|
+
const console_1 = require("@arikajs/console");
|
|
5
|
+
const arikajs_1 = require("arikajs");
|
|
6
|
+
class QueueFailedCommand extends console_1.Command {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.signature = 'queue:failed';
|
|
10
|
+
this.description = 'List all of the failed queue jobs';
|
|
11
|
+
}
|
|
12
|
+
async handle() {
|
|
13
|
+
const db = (0, arikajs_1.app)().make('db');
|
|
14
|
+
const failedJobs = await db.table('failed_jobs').get();
|
|
15
|
+
if (failedJobs.length === 0) {
|
|
16
|
+
this.info('No failed jobs found.');
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
const headers = ['ID', 'Connection', 'Queue', 'Failed At'];
|
|
20
|
+
const rows = failedJobs.map((job) => [
|
|
21
|
+
job.id,
|
|
22
|
+
job.connection,
|
|
23
|
+
job.queue,
|
|
24
|
+
new Date(job.failed_at).toLocaleString()
|
|
25
|
+
]);
|
|
26
|
+
this.table(headers, rows);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.QueueFailedCommand = QueueFailedCommand;
|
|
30
|
+
//# sourceMappingURL=QueueFailedCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFailedCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueFailedCommand.ts"],"names":[],"mappings":";;;AACA,8CAA2C;AAC3C,qCAA8B;AAE9B,MAAa,kBAAmB,SAAQ,iBAAO;IAA/C;;QACW,cAAS,GAAG,cAAc,CAAC;QAC3B,gBAAW,GAAG,mCAAmC,CAAC;IAqB7D,CAAC;IAnBU,KAAK,CAAC,MAAM;QACf,MAAM,EAAE,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,CAAC;QAEvD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;YACnC,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;QAC3D,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC;YACtC,GAAG,CAAC,EAAE;YACN,GAAG,CAAC,UAAU;YACd,GAAG,CAAC,KAAK;YACT,IAAI,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,cAAc,EAAE;SAC3C,CAAC,CAAC;QAEH,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;CACJ;AAvBD,gDAuBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFailedTableCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueFailedTableCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,qBAAa,uBAAwB,SAAQ,OAAO;IACzC,SAAS,SAAwB;IACjC,WAAW,SAAiE;IAEtE,MAAM;CA0CtB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
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.QueueFailedTableCommand = 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 QueueFailedTableCommand extends console_1.Command {
|
|
11
|
+
constructor() {
|
|
12
|
+
super(...arguments);
|
|
13
|
+
this.signature = 'queue:failed-table';
|
|
14
|
+
this.description = 'Create a migration for the failed queue jobs database table';
|
|
15
|
+
}
|
|
16
|
+
async handle() {
|
|
17
|
+
const migrationsDir = path_1.default.join(process.cwd(), 'database/migrations');
|
|
18
|
+
if (!fs_1.default.existsSync(migrationsDir)) {
|
|
19
|
+
fs_1.default.mkdirSync(migrationsDir, { recursive: true });
|
|
20
|
+
}
|
|
21
|
+
const date = new Date();
|
|
22
|
+
const timestamp = date.getFullYear().toString() + '_' +
|
|
23
|
+
(date.getMonth() + 1).toString().padStart(2, '0') + '_' +
|
|
24
|
+
date.getDate().toString().padStart(2, '0') + '_' +
|
|
25
|
+
date.getHours().toString().padStart(2, '0') +
|
|
26
|
+
date.getMinutes().toString().padStart(2, '0') +
|
|
27
|
+
date.getSeconds().toString().padStart(2, '0');
|
|
28
|
+
const fileName = `${timestamp}_create_failed_jobs_table.ts`;
|
|
29
|
+
const filePath = path_1.default.join(migrationsDir, fileName);
|
|
30
|
+
const content = `import { Migration, SchemaBuilder } from 'arikajs';
|
|
31
|
+
|
|
32
|
+
export default class CreateFailedJobsTable extends Migration {
|
|
33
|
+
public async up(schema: SchemaBuilder) {
|
|
34
|
+
await schema.create('failed_jobs', (table: any) => {
|
|
35
|
+
table.id();
|
|
36
|
+
table.string('uuid').unique();
|
|
37
|
+
table.string('connection');
|
|
38
|
+
table.string('queue');
|
|
39
|
+
table.text('payload');
|
|
40
|
+
table.text('exception');
|
|
41
|
+
table.timestamp('failed_at').useCurrent();
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public async down(schema: SchemaBuilder) {
|
|
46
|
+
await schema.dropIfExists('failed_jobs');
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
`;
|
|
50
|
+
fs_1.default.writeFileSync(filePath, content);
|
|
51
|
+
this.info(`Migration created: ${filePath}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.QueueFailedTableCommand = QueueFailedTableCommand;
|
|
55
|
+
//# sourceMappingURL=QueueFailedTableCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFailedTableCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueFailedTableCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,uBAAwB,SAAQ,iBAAO;IAApD;;QACW,cAAS,GAAG,oBAAoB,CAAC;QACjC,gBAAW,GAAG,6DAA6D,CAAC;IA4CvF,CAAC;IA1CU,KAAK,CAAC,MAAM;QACf,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,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,8BAA8B,CAAC;QAC5D,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAEpD,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;CAmBvB,CAAC;QAEM,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;IAChD,CAAC;CACJ;AA9CD,0DA8CC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFlushCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueFlushCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,qBAAa,iBAAkB,SAAQ,OAAO;IACnC,SAAS,SAAiB;IAC1B,WAAW,SAAwC;IAE7C,MAAM;CAOtB"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QueueFlushCommand = void 0;
|
|
4
|
+
const console_1 = require("@arikajs/console");
|
|
5
|
+
const arikajs_1 = require("arikajs");
|
|
6
|
+
class QueueFlushCommand extends console_1.Command {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.signature = 'queue:flush';
|
|
10
|
+
this.description = 'Flush all of the failed queue jobs';
|
|
11
|
+
}
|
|
12
|
+
async handle() {
|
|
13
|
+
if (await this.confirm('Are you sure you want to flush all failed jobs?')) {
|
|
14
|
+
const db = (0, arikajs_1.app)().make('db');
|
|
15
|
+
await db.table('failed_jobs').delete();
|
|
16
|
+
this.success('All failed jobs have been deleted.');
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.QueueFlushCommand = QueueFlushCommand;
|
|
21
|
+
//# sourceMappingURL=QueueFlushCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueFlushCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueFlushCommand.ts"],"names":[],"mappings":";;;AACA,8CAA2C;AAC3C,qCAA8B;AAE9B,MAAa,iBAAkB,SAAQ,iBAAO;IAA9C;;QACW,cAAS,GAAG,aAAa,CAAC;QAC1B,gBAAW,GAAG,oCAAoC,CAAC;IAS9D,CAAC;IAPU,KAAK,CAAC,MAAM;QACf,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,iDAAiD,CAAC,EAAE,CAAC;YACxE,MAAM,EAAE,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,OAAO,CAAC,oCAAoC,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;CACJ;AAXD,8CAWC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRetryCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueRetryCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,qBAAa,iBAAkB,SAAQ,OAAO;IACnC,SAAS,SAAsB;IAC/B,WAAW,SAA8B;IAEnC,MAAM;CA4BtB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.QueueRetryCommand = void 0;
|
|
4
|
+
const console_1 = require("@arikajs/console");
|
|
5
|
+
const arikajs_1 = require("arikajs");
|
|
6
|
+
class QueueRetryCommand extends console_1.Command {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.signature = 'queue:retry {id}';
|
|
10
|
+
this.description = 'Retry a failed queue job';
|
|
11
|
+
}
|
|
12
|
+
async handle() {
|
|
13
|
+
const id = this.argument('id');
|
|
14
|
+
const db = (0, arikajs_1.app)().make('db');
|
|
15
|
+
const config = (0, arikajs_1.app)().make('config');
|
|
16
|
+
const failedJob = await db.table('failed_jobs').where('id', id).first();
|
|
17
|
+
if (!failedJob) {
|
|
18
|
+
this.error(`Failed job with ID [${id}] not found.`);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const jobsTable = config.get('queue.connections.database.table', 'jobs');
|
|
22
|
+
// Re-insert into active jobs table
|
|
23
|
+
await db.table(jobsTable).insert({
|
|
24
|
+
queue: failedJob.queue,
|
|
25
|
+
payload: failedJob.payload,
|
|
26
|
+
attempts: 0,
|
|
27
|
+
available_at: Math.floor(Date.now() / 1000),
|
|
28
|
+
created_at: Math.floor(Date.now() / 1000),
|
|
29
|
+
});
|
|
30
|
+
// Delete from failed jobs
|
|
31
|
+
await db.table('failed_jobs').where('id', id).delete();
|
|
32
|
+
this.success(`The failed job [${id}] has been pushed back onto the queue.`);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
exports.QueueRetryCommand = QueueRetryCommand;
|
|
36
|
+
//# sourceMappingURL=QueueRetryCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueRetryCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueRetryCommand.ts"],"names":[],"mappings":";;;AACA,8CAA2C;AAC3C,qCAA8B;AAE9B,MAAa,iBAAkB,SAAQ,iBAAO;IAA9C;;QACW,cAAS,GAAG,kBAAkB,CAAC;QAC/B,gBAAW,GAAG,0BAA0B,CAAC;IA8BpD,CAAC;IA5BU,KAAK,CAAC,MAAM;QACf,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC/B,MAAM,EAAE,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,MAAM,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEzC,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAExE,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,cAAc,CAAC,CAAC;YACpD,OAAO;QACX,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,kCAAkC,EAAE,MAAM,CAAC,CAAC;QAEzE,mCAAmC;QACnC,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;YAC7B,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,QAAQ,EAAE,CAAC;YACX,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAC3C,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;SAC5C,CAAC,CAAC;QAEH,0BAA0B;QAC1B,MAAM,EAAE,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;QAEvD,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,wCAAwC,CAAC,CAAC;IAChF,CAAC;CACJ;AAhCD,8CAgCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueueTableCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueTableCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,qBAAa,iBAAkB,SAAQ,OAAO;IACnC,SAAS,SAAiB;IAC1B,WAAW,SAA0D;IAE/D,MAAM;
|
|
1
|
+
{"version":3,"file":"QueueTableCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueTableCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,qBAAa,iBAAkB,SAAQ,OAAO;IACnC,SAAS,SAAiB;IAC1B,WAAW,SAA0D;IAE/D,MAAM;CA0CtB"}
|
|
@@ -18,26 +18,32 @@ class QueueTableCommand extends console_1.Command {
|
|
|
18
18
|
if (!fs_1.default.existsSync(migrationsDir)) {
|
|
19
19
|
fs_1.default.mkdirSync(migrationsDir, { recursive: true });
|
|
20
20
|
}
|
|
21
|
-
const
|
|
21
|
+
const date = new Date();
|
|
22
|
+
const timestamp = date.getFullYear().toString() + '_' +
|
|
23
|
+
(date.getMonth() + 1).toString().padStart(2, '0') + '_' +
|
|
24
|
+
date.getDate().toString().padStart(2, '0') + '_' +
|
|
25
|
+
date.getHours().toString().padStart(2, '0') +
|
|
26
|
+
date.getMinutes().toString().padStart(2, '0') +
|
|
27
|
+
date.getSeconds().toString().padStart(2, '0');
|
|
22
28
|
const fileName = `${timestamp}_create_jobs_table.ts`;
|
|
23
29
|
const filePath = path_1.default.join(migrationsDir, fileName);
|
|
24
|
-
const content = `import {
|
|
30
|
+
const content = `import { Migration, SchemaBuilder } from 'arikajs';
|
|
25
31
|
|
|
26
|
-
export default class CreateJobsTable {
|
|
27
|
-
public async up() {
|
|
28
|
-
await
|
|
32
|
+
export default class CreateJobsTable extends Migration {
|
|
33
|
+
public async up(schema: SchemaBuilder) {
|
|
34
|
+
await schema.create('jobs', (table: any) => {
|
|
29
35
|
table.id();
|
|
30
|
-
table.string('queue')
|
|
31
|
-
table.
|
|
32
|
-
table.
|
|
33
|
-
table.
|
|
34
|
-
table.
|
|
35
|
-
table.
|
|
36
|
+
table.string('queue');
|
|
37
|
+
table.text('payload');
|
|
38
|
+
table.integer('attempts');
|
|
39
|
+
table.integer('reserved_at').nullable();
|
|
40
|
+
table.integer('available_at');
|
|
41
|
+
table.integer('created_at');
|
|
36
42
|
});
|
|
37
43
|
}
|
|
38
44
|
|
|
39
|
-
public async down() {
|
|
40
|
-
await
|
|
45
|
+
public async down(schema: SchemaBuilder) {
|
|
46
|
+
await schema.dropIfExists('jobs');
|
|
41
47
|
}
|
|
42
48
|
}
|
|
43
49
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"QueueTableCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueTableCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,iBAAkB,SAAQ,iBAAO;IAA9C;;QACW,cAAS,GAAG,aAAa,CAAC;QAC1B,gBAAW,GAAG,sDAAsD,CAAC;
|
|
1
|
+
{"version":3,"file":"QueueTableCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueTableCommand.ts"],"names":[],"mappings":";;;;;;AACA,8CAA2C;AAC3C,4CAAoB;AACpB,gDAAwB;AAExB,MAAa,iBAAkB,SAAQ,iBAAO;IAA9C;;QACW,cAAS,GAAG,aAAa,CAAC;QAC1B,gBAAW,GAAG,sDAAsD,CAAC;IA4ChF,CAAC;IA1CU,KAAK,CAAC,MAAM;QACf,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,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,uBAAuB,CAAC;QACrD,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAEpD,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;CAmBvB,CAAC;QAEM,YAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;IAChD,CAAC;CACJ;AA9CD,8CA8CC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Command } from '@arikajs/console';
|
|
2
|
+
export declare class QueueWorkCommand extends Command {
|
|
3
|
+
signature: string;
|
|
4
|
+
description: string;
|
|
5
|
+
handle(): Promise<void>;
|
|
6
|
+
protected registerJobsFromDirectory(): Promise<void>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=QueueWorkCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueWorkCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/QueueWorkCommand.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAG3C,qBAAa,gBAAiB,SAAQ,OAAO;IAClC,SAAS,SAAgB;IACzB,WAAW,SAA+D;IAEpE,MAAM;cAoBH,yBAAyB;CA2B5C"}
|
|
@@ -0,0 +1,88 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.QueueWorkCommand = void 0;
|
|
37
|
+
const console_1 = require("@arikajs/console");
|
|
38
|
+
const arikajs_1 = require("arikajs");
|
|
39
|
+
class QueueWorkCommand extends console_1.Command {
|
|
40
|
+
constructor() {
|
|
41
|
+
super(...arguments);
|
|
42
|
+
this.signature = 'queue:work';
|
|
43
|
+
this.description = 'Start processing jobs on the queue as a background worker';
|
|
44
|
+
}
|
|
45
|
+
async handle() {
|
|
46
|
+
this.info('ArikaJS Queue Worker started...');
|
|
47
|
+
this.info('Press Ctrl+C to stop.');
|
|
48
|
+
const queue = (0, arikajs_1.app)().make('queue');
|
|
49
|
+
const config = (0, arikajs_1.app)().make('config');
|
|
50
|
+
const driverName = this.option('connection') || config.get('queue.default');
|
|
51
|
+
const driver = queue.driver(driverName);
|
|
52
|
+
// Auto-register jobs from app/Jobs directory if possible
|
|
53
|
+
await this.registerJobsFromDirectory();
|
|
54
|
+
const worker = new arikajs_1.Worker(driver, {
|
|
55
|
+
queue: this.option('queue') || 'default',
|
|
56
|
+
sleep: parseInt(this.option('sleep') || '3')
|
|
57
|
+
});
|
|
58
|
+
await worker.run();
|
|
59
|
+
}
|
|
60
|
+
async registerJobsFromDirectory() {
|
|
61
|
+
const path = require('path');
|
|
62
|
+
const fs = require('fs');
|
|
63
|
+
const jobsDir = path.join(process.cwd(), 'app', 'Jobs');
|
|
64
|
+
if (fs.existsSync(jobsDir)) {
|
|
65
|
+
const files = fs.readdirSync(jobsDir);
|
|
66
|
+
for (const file of files) {
|
|
67
|
+
if (file.endsWith('.ts') || file.endsWith('.js')) {
|
|
68
|
+
const jobName = path.parse(file).name;
|
|
69
|
+
try {
|
|
70
|
+
const jobModule = await Promise.resolve(`${path.join(jobsDir, file)}`).then(s => __importStar(require(s)));
|
|
71
|
+
const JobClass = jobModule[jobName] || jobModule.default;
|
|
72
|
+
if (JobClass) {
|
|
73
|
+
arikajs_1.Worker.registerJob(jobName, JobClass);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
catch (e) {
|
|
77
|
+
// Skip if cannot import
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
// Also register VerifyEmail if it is used (though technically it is a Mailable,
|
|
83
|
+
// in ArikaJS mail is often sent via queue using the Mailable itself as a job)
|
|
84
|
+
// For standard jobs, this directory sweep is enough.
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.QueueWorkCommand = QueueWorkCommand;
|
|
88
|
+
//# sourceMappingURL=QueueWorkCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"QueueWorkCommand.js","sourceRoot":"","sources":["../../../src/Commands/QueueWorkCommand.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAA2C;AAC3C,qCAAsC;AAEtC,MAAa,gBAAiB,SAAQ,iBAAO;IAA7C;;QACW,cAAS,GAAG,YAAY,CAAC;QACzB,gBAAW,GAAG,2DAA2D,CAAC;IAiDrF,CAAC;IA/CU,KAAK,CAAC,MAAM;QACf,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAEnC,MAAM,KAAK,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,MAAM,GAAQ,IAAA,aAAG,GAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAExC,yDAAyD;QACzD,MAAM,IAAI,CAAC,yBAAyB,EAAE,CAAC;QAEvC,MAAM,MAAM,GAAG,IAAI,gBAAM,CAAC,MAAM,EAAE;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,SAAS;YACxC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;SAC/C,CAAC,CAAC;QAEH,MAAM,MAAM,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;IAES,KAAK,CAAC,yBAAyB;QACrC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAExD,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YACtC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;oBACtC,IAAI,CAAC;wBACD,MAAM,SAAS,GAAG,yBAAa,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,uCAAC,CAAC;wBACzD,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC;wBACzD,IAAI,QAAQ,EAAE,CAAC;4BACX,gBAAM,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;wBAC1C,CAAC;oBACL,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACT,wBAAwB;oBAC5B,CAAC;gBACL,CAAC;YACL,CAAC;QACL,CAAC;QAED,iFAAiF;QACjF,8EAA8E;QAC9E,qDAAqD;IACzD,CAAC;CACJ;AAnDD,4CAmDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouteListCommand.d.ts","sourceRoot":"","sources":["../../../src/Commands/RouteListCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAI3C,qBAAa,gBAAiB,SAAQ,OAAO;IAClC,SAAS,SAAgB;IACzB,WAAW,SAAgC;IAErC,MAAM;CAgEtB"}
|