canxjs 1.0.1 ā 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -13
- package/cli/bin.ts +32 -2
- package/dist/Application.d.ts +5 -1
- package/dist/Application.d.ts.map +1 -1
- package/dist/docs/ApiDoc.d.ts +3 -2
- package/dist/docs/ApiDoc.d.ts.map +1 -1
- package/dist/generator/ClientGenerator.d.ts +7 -0
- package/dist/generator/ClientGenerator.d.ts.map +1 -0
- package/dist/index.d.ts +10 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +991 -340
- package/dist/middlewares/RateLimitMiddleware.d.ts +10 -0
- package/dist/middlewares/RateLimitMiddleware.d.ts.map +1 -0
- package/dist/middlewares/SecurityMiddleware.d.ts +14 -0
- package/dist/middlewares/SecurityMiddleware.d.ts.map +1 -0
- package/dist/middlewares/ValidationMiddleware.d.ts +4 -0
- package/dist/middlewares/ValidationMiddleware.d.ts.map +1 -0
- package/dist/queue/Queue.d.ts +19 -58
- package/dist/queue/Queue.d.ts.map +1 -1
- package/dist/queue/drivers/MemoryDriver.d.ts +15 -0
- package/dist/queue/drivers/MemoryDriver.d.ts.map +1 -0
- package/dist/queue/drivers/RedisDriver.d.ts +16 -0
- package/dist/queue/drivers/RedisDriver.d.ts.map +1 -0
- package/dist/queue/drivers/types.d.ts +42 -0
- package/dist/queue/drivers/types.d.ts.map +1 -0
- package/dist/schema/Schema.d.ts +64 -0
- package/dist/schema/Schema.d.ts.map +1 -0
- package/dist/testing/TestClient.d.ts +30 -0
- package/dist/testing/TestClient.d.ts.map +1 -0
- package/dist/utils/ErrorHandler.d.ts.map +1 -1
- package/package.json +5 -2
- package/src/Application.ts +27 -18
- package/src/docs/ApiDoc.ts +12 -4
- package/src/generator/ClientGenerator.ts +118 -0
- package/src/index.ts +16 -1
- package/src/middlewares/RateLimitMiddleware.ts +62 -0
- package/src/middlewares/SecurityMiddleware.ts +55 -0
- package/src/middlewares/ValidationMiddleware.ts +35 -0
- package/src/queue/Queue.ts +82 -162
- package/src/queue/drivers/MemoryDriver.ts +91 -0
- package/src/queue/drivers/RedisDriver.ts +108 -0
- package/src/queue/drivers/types.ts +37 -0
- package/src/schema/Schema.ts +299 -0
- package/src/testing/TestClient.ts +88 -0
- package/src/utils/ErrorHandler.ts +45 -17
package/README.md
CHANGED
|
@@ -158,23 +158,23 @@ bunx create-canx my-api --api # Create API-only project
|
|
|
158
158
|
bunx create-canx my-svc --micro # Create microservice
|
|
159
159
|
|
|
160
160
|
# Development (inside project)
|
|
161
|
-
canx serve
|
|
162
|
-
canx build
|
|
163
|
-
canx routes
|
|
161
|
+
bunx canx serve # Start dev server with hot reload
|
|
162
|
+
bunx canx build # Build for production
|
|
163
|
+
bunx canx routes # List all registered routes
|
|
164
164
|
|
|
165
165
|
# Generators
|
|
166
|
-
canx make:controller User # Generate controller
|
|
167
|
-
canx make:model Post --migration # Generate model with migration
|
|
168
|
-
canx make:middleware Auth # Generate middleware
|
|
169
|
-
canx make:migration create_posts # Generate migration
|
|
170
|
-
canx make:seeder User # Generate seeder
|
|
171
|
-
canx make:service Payment # Generate service
|
|
166
|
+
bunx canx make:controller User # Generate controller
|
|
167
|
+
bunx canx make:model Post --migration # Generate model with migration
|
|
168
|
+
bunx canx make:middleware Auth # Generate middleware
|
|
169
|
+
bunx canx make:migration create_posts # Generate migration
|
|
170
|
+
bunx canx make:seeder User # Generate seeder
|
|
171
|
+
bunx canx make:service Payment # Generate service
|
|
172
172
|
|
|
173
173
|
# Database
|
|
174
|
-
canx db:migrate # Run migrations
|
|
175
|
-
canx db:rollback # Rollback migrations
|
|
176
|
-
canx db:seed # Run seeders
|
|
177
|
-
canx db:fresh # Drop all & re-migrate
|
|
174
|
+
bunx canx db:migrate # Run migrations
|
|
175
|
+
bunx canx db:rollback # Rollback migrations
|
|
176
|
+
bunx canx db:seed # Run seeders
|
|
177
|
+
bunx canx db:fresh # Drop all & re-migrate
|
|
178
178
|
```
|
|
179
179
|
|
|
180
180
|
## Project Structure
|
package/cli/bin.ts
CHANGED
|
@@ -387,7 +387,37 @@ const commands: Record<string, { description: string; handler: (args: string[])
|
|
|
387
387
|
routes.forEach((r: any) => console.log(` ${r.method.padEnd(7)} ${r.path}`));
|
|
388
388
|
console.log(`\nTotal: ${routes.length} routes\n`);
|
|
389
389
|
} catch (e) {
|
|
390
|
-
console.error('Could not load routes. Make sure src/app.ts exists.');
|
|
390
|
+
console.error('Could not load routes. Make sure src/app.ts exists and exports default app.');
|
|
391
|
+
}
|
|
392
|
+
},
|
|
393
|
+
},
|
|
394
|
+
|
|
395
|
+
'generate:client': {
|
|
396
|
+
description: 'Generate Type-Safe Client SDK',
|
|
397
|
+
handler: async (args) => {
|
|
398
|
+
const output = args[0] || 'client.ts';
|
|
399
|
+
console.log(`\nš® Generating Client SDK to ${output}...\n`);
|
|
400
|
+
try {
|
|
401
|
+
// We need to import the app to get the routes
|
|
402
|
+
// This assumes src/app.ts exports the Canx app instance as default
|
|
403
|
+
const appModule = await import(process.cwd() + '/src/app.ts');
|
|
404
|
+
const app = appModule.default;
|
|
405
|
+
|
|
406
|
+
if (!app) {
|
|
407
|
+
throw new Error('src/app.ts must export the Canx app instance as default.');
|
|
408
|
+
}
|
|
409
|
+
|
|
410
|
+
// We import ClientGenerator dynamically to ensure we get the one from the project's canxjs version
|
|
411
|
+
// Or if we are running from the CLI package itself, we might need a different strategy.
|
|
412
|
+
// For now, let's try importing from the framework.
|
|
413
|
+
const { ClientGenerator } = await import('canxjs');
|
|
414
|
+
const generator = new ClientGenerator(app);
|
|
415
|
+
generator.generate(output);
|
|
416
|
+
|
|
417
|
+
console.log('\nā
Client SDK generated successfully!\n');
|
|
418
|
+
} catch (e) {
|
|
419
|
+
console.error('Generation failed:', e);
|
|
420
|
+
console.log('Tip: Ensure src/app.ts exports "default app"');
|
|
391
421
|
}
|
|
392
422
|
},
|
|
393
423
|
},
|
|
@@ -590,7 +620,7 @@ Commands:`);
|
|
|
590
620
|
// Group commands
|
|
591
621
|
const groups: Record<string, string[]> = {
|
|
592
622
|
'Project': ['new', 'create'],
|
|
593
|
-
'Development': ['serve', 'build', 'routes'],
|
|
623
|
+
'Development': ['serve', 'build', 'routes', 'generate:client'],
|
|
594
624
|
'Generators': ['make:controller', 'make:model', 'make:middleware', 'make:migration', 'make:seeder', 'make:service', 'make:notification'],
|
|
595
625
|
'Database': ['db:migrate', 'db:rollback', 'db:seed', 'db:fresh'],
|
|
596
626
|
'Other': ['version', 'help'],
|
package/dist/Application.d.ts
CHANGED
|
@@ -29,7 +29,11 @@ export declare class Canx implements CanxApplication {
|
|
|
29
29
|
/**
|
|
30
30
|
* Start the server
|
|
31
31
|
*/
|
|
32
|
-
listen(port?: number, callback?: () => void): Promise<void>;
|
|
32
|
+
listen(port?: number | (() => void), callback?: () => void): Promise<void>;
|
|
33
|
+
/**
|
|
34
|
+
* Handle a raw request (internal or for testing)
|
|
35
|
+
*/
|
|
36
|
+
handle(rawReq: Request): Promise<Response>;
|
|
33
37
|
/**
|
|
34
38
|
* Stop the server
|
|
35
39
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.d.ts","sourceRoot":"","sources":["../src/Application.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAc,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEpH,OAAO,EAAE,MAAM,EAAgB,MAAM,eAAe,CAAC;AAIrD,qBAAa,IAAK,YAAW,eAAe;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,OAAO,CAAgB;gBAEnB,MAAM,GAAE,YAAiB;IAWrC;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;IAKxC;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAKxD;;OAEG;IACH,UAAU,CAAC,eAAe,EAAE,UAAU,GAAG,GAAG,IAAI;IAoBhD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5B;;OAEG;IACG,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"Application.d.ts","sourceRoot":"","sources":["../src/Application.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAc,eAAe,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEpH,OAAO,EAAE,MAAM,EAAgB,MAAM,eAAe,CAAC;AAIrD,qBAAa,IAAK,YAAW,eAAe;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,OAAO,CAAgB;gBAEnB,MAAM,GAAE,YAAiB;IAWrC;;OAEG;IACH,GAAG,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;IAKxC;;OAEG;IACH,MAAM,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAKxD;;OAEG;IACH,UAAU,CAAC,eAAe,EAAE,UAAU,GAAG,GAAG,IAAI;IAoBhD;;OAEG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK5B;;OAEG;IACG,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBhF;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAkBhD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAO5B;;OAEG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI;IAC3C,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI;IAC5C,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI;IAC3C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI;IAC7C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,GAAG,EAAE,GAAG,IAAI;CAC/C;AAED,wBAAgB,SAAS,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,IAAI,CAErD;AAED,eAAe,IAAI,CAAC"}
|
package/dist/docs/ApiDoc.d.ts
CHANGED
|
@@ -63,8 +63,9 @@ interface OpenAPISpec {
|
|
|
63
63
|
}
|
|
64
64
|
export declare function ApiDoc(meta: Partial<ApiEndpoint>): MethodDecorator;
|
|
65
65
|
export declare function ApiParam(param: ApiParameter): MethodDecorator;
|
|
66
|
-
|
|
67
|
-
export declare function
|
|
66
|
+
import { Schema } from '../schema/Schema';
|
|
67
|
+
export declare function ApiBody(schema: ApiSchema | Schema<any>, required?: boolean): MethodDecorator;
|
|
68
|
+
export declare function ApiResponse(status: number, description: string, schema?: ApiSchema | Schema<any>): MethodDecorator;
|
|
68
69
|
declare class ApiDocGenerator {
|
|
69
70
|
private endpoints;
|
|
70
71
|
private schemas;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiDoc.d.ts","sourceRoot":"","sources":["../../src/docs/ApiDoc.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,cAAc;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;CAChD;AAED,UAAU,WAAW;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;CACjD;AAED,UAAU,SAAS;IACjB,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IACvE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/D,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvD,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;IAChG,IAAI,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAQD,wBAAgB,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,eAAe,CAQlE;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,YAAY,GAAG,eAAe,CAQ7D;AAED,wBAAgB,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,UAAO,GAAG,eAAe,
|
|
1
|
+
{"version":3,"file":"ApiDoc.d.ts","sourceRoot":"","sources":["../../src/docs/ApiDoc.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ClientGenerator.d.ts","sourceRoot":"","sources":["../../src/generator/ClientGenerator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAG3C,qBAAa,eAAe;IACd,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,IAAI;IAE7B,QAAQ,CAAC,UAAU,GAAE,MAAoB,GAAG,IAAI;CA6GjD"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,6 +6,13 @@
|
|
|
6
6
|
export { Server, createCanxRequest, createCanxResponse } from './core/Server';
|
|
7
7
|
export { Router, createRouter } from './core/Router';
|
|
8
8
|
export { MiddlewarePipeline, cors, logger, bodyParser, rateLimit, compress, createMiddlewarePipeline } from './core/Middleware';
|
|
9
|
+
export { security } from './middlewares/SecurityMiddleware';
|
|
10
|
+
export { rateLimit as rateLimitMiddleware } from './middlewares/RateLimitMiddleware';
|
|
11
|
+
export { validateSchema } from './middlewares/ValidationMiddleware';
|
|
12
|
+
export { z, Schema as ZSchema } from './schema/Schema';
|
|
13
|
+
export type { Infer } from './schema/Schema';
|
|
14
|
+
export { ClientGenerator } from './generator/ClientGenerator';
|
|
15
|
+
export { TestClient } from './testing/TestClient';
|
|
9
16
|
export { BaseController, Controller, Get, Post, Put, Patch, Delete, Middleware, getControllerMeta } from './mvc/Controller';
|
|
10
17
|
export { Model, initDatabase, closeDatabase, query, execute } from './mvc/Model';
|
|
11
18
|
export { jsx, jsxs, Fragment, html, render, renderPage, createLayout } from './mvc/View';
|
|
@@ -17,6 +24,8 @@ export { auth, hashPassword, verifyPassword, signJWT, verifyJWT, jwtAuth, option
|
|
|
17
24
|
export { Schema, migrator, defineMigration } from './database/Migration';
|
|
18
25
|
export { seeder, fake, factory as seederFactory, defineSeeder } from './database/Seeder';
|
|
19
26
|
export { queue, createQueue } from './queue/Queue';
|
|
27
|
+
export { RedisDriver } from './queue/drivers/RedisDriver';
|
|
28
|
+
export { MemoryDriver } from './queue/drivers/MemoryDriver';
|
|
20
29
|
export { channel, createChannel } from './realtime/Channel';
|
|
21
30
|
export { ws, createWebSocketServer, WebSocketServer } from './realtime/WebSocket';
|
|
22
31
|
export { storage, initStorage, handleUpload, handleMultipleUploads } from './storage/Storage';
|
|
@@ -40,7 +49,7 @@ export { health, metrics, databaseCheck, memoryCheck, diskCheck, httpCheck, redi
|
|
|
40
49
|
export type { HealthCheckResult, HealthReport, HealthStatus, HealthChecker } from './utils/Health';
|
|
41
50
|
export { initI18n, useI18n, t, plural, I18n, i18nMiddleware } from './utils/i18n';
|
|
42
51
|
export type { I18nConfig, TranslationObject } from './utils/i18n';
|
|
43
|
-
export {
|
|
52
|
+
export { ResponseAssertions, MockFactory, createTestClient, assertResponse, factory, randomString, randomEmail, randomNumber, randomUuid, sleep, } from './testing/TestCase';
|
|
44
53
|
export type { TestResponse, TestRequest } from './testing/TestCase';
|
|
45
54
|
export { Canx, createApp } from './Application';
|
|
46
55
|
export type * from './types';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|