canxjs 1.2.2 → 1.2.4

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.
@@ -1,15 +1,26 @@
1
1
  /**
2
2
  * CanxJS Model - Zero-config ORM with MySQL primary, PostgreSQL secondary
3
3
  */
4
- import type { DatabaseConfig, QueryBuilder } from '../types';
4
+ import type { DatabaseConfig, DatabaseDriver, QueryBuilder } from '../types';
5
5
  export declare function initDatabase(config: DatabaseConfig): Promise<void>;
6
6
  export declare function closeDatabase(): Promise<void>;
7
+ export declare function getCurrentDriver(): DatabaseDriver;
7
8
  declare function query<T = any>(sql: string, params?: any[]): Promise<T[]>;
8
9
  declare function execute(sql: string, params?: any[]): Promise<{
9
10
  affectedRows: number;
10
11
  insertId: number;
11
12
  }>;
12
- declare class QueryBuilderImpl<T> implements QueryBuilder<T> {
13
+ interface RelationInfo {
14
+ type: 'hasOne' | 'hasMany' | 'belongsTo' | 'belongsToMany';
15
+ relatedClass: any;
16
+ foreignKey: string;
17
+ localKey?: string;
18
+ ownerKey?: string;
19
+ pivotTable?: string;
20
+ foreignPivotKey?: string;
21
+ relatedPivotKey?: string;
22
+ }
23
+ export declare class QueryBuilderImpl<T> implements QueryBuilder<T> {
13
24
  private table;
14
25
  private selectCols;
15
26
  private whereClauses;
@@ -20,7 +31,10 @@ declare class QueryBuilderImpl<T> implements QueryBuilder<T> {
20
31
  private groupClauses;
21
32
  private havingClauses;
22
33
  private bindings;
23
- constructor(table: string);
34
+ private modelClass?;
35
+ private withRelations;
36
+ _relationInfo?: RelationInfo;
37
+ constructor(table: string, modelClass?: any);
24
38
  select(...cols: any[]): this;
25
39
  where(col: any, op: string, val: any): this;
26
40
  whereIn(col: any, vals: any[]): this;
@@ -34,8 +48,10 @@ declare class QueryBuilderImpl<T> implements QueryBuilder<T> {
34
48
  leftJoin(table: string, first: string, op: string, second: string): this;
35
49
  groupBy(...cols: any[]): this;
36
50
  having(col: any, op: string, val: any): this;
51
+ with(...relations: string[]): this;
37
52
  private buildSelect;
38
53
  get(): Promise<T[]>;
54
+ eagerLoad(results: any[]): Promise<void>;
39
55
  first(): Promise<T | null>;
40
56
  count(): Promise<number>;
41
57
  sum(col: any): Promise<number>;
@@ -45,18 +61,47 @@ declare class QueryBuilderImpl<T> implements QueryBuilder<T> {
45
61
  delete(): Promise<number>;
46
62
  raw(sql: string, bindings?: any[]): Promise<any>;
47
63
  }
48
- export declare abstract class Model<T extends Record<string, any> = any> {
64
+ export declare abstract class Model {
49
65
  protected static tableName: string;
50
66
  protected static primaryKey: string;
51
67
  protected static timestamps: boolean;
52
- static table<T>(): QueryBuilder<T>;
53
- static find<T>(id: number | string): Promise<T | null>;
54
- static all<T>(): Promise<T[]>;
55
- static create<T>(data: Partial<T>): Promise<T>;
68
+ [key: string]: any;
69
+ relations: Record<string, any>;
70
+ constructor(data?: any);
71
+ static table<T extends Model>(this: new () => T): QueryBuilder<T>;
72
+ static find<T extends Model>(this: {
73
+ new (): T;
74
+ } & typeof Model, id: number | string): Promise<T | null>;
75
+ static query<T extends Model>(this: {
76
+ new (): T;
77
+ } & typeof Model): QueryBuilder<T>;
78
+ static all<T extends Model>(this: {
79
+ new (): T;
80
+ } & typeof Model): Promise<T[]>;
81
+ startRelation(name: string): void;
82
+ load(...relations: string[]): Promise<this>;
83
+ static with<T extends Model>(this: {
84
+ new (): T;
85
+ } & typeof Model, ...relations: string[]): QueryBuilder<T>;
86
+ fill(data: any): this;
87
+ static create<T extends Model>(this: {
88
+ new (): T;
89
+ } & typeof Model, data: Partial<T>): Promise<T>;
56
90
  static updateById<T>(id: number | string, data: Partial<T>): Promise<number>;
57
91
  static deleteById(id: number | string): Promise<number>;
58
- static query<T>(): QueryBuilder<T>;
92
+ hasOne<R extends Model>(related: {
93
+ new (): R;
94
+ } & typeof Model, foreignKey?: string, localKey?: string): Promise<R | null>;
95
+ hasMany<R extends Model>(related: {
96
+ new (): R;
97
+ } & typeof Model, foreignKey?: string, localKey?: string): QueryBuilder<R>;
98
+ belongsTo<R extends Model>(related: {
99
+ new (): R;
100
+ } & typeof Model, foreignKey?: string, ownerKey?: string): Promise<R | null>;
101
+ belongsToMany<R extends Model>(related: {
102
+ new (): R;
103
+ } & typeof Model, pivotTable: string, foreignPivotKey?: string, relatedPivotKey?: string): QueryBuilder<R>;
59
104
  }
60
- export { query, execute, QueryBuilderImpl };
105
+ export { query, execute };
61
106
  export default Model;
62
107
  //# sourceMappingURL=Model.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../src/mvc/Model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Model.d.ts","sourceRoot":"","sources":["../../src/mvc/Model.ts"],"names":[],"mappings":"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"}
@@ -195,6 +195,7 @@ export interface QueryBuilder<T> {
195
195
  update: (data: Partial<T>) => Promise<number>;
196
196
  delete: () => Promise<number>;
197
197
  raw: (sql: string, bindings?: unknown[]) => Promise<unknown>;
198
+ with: (...relations: string[]) => QueryBuilder<T>;
198
199
  }
199
200
  export interface ViewContext {
200
201
  [key: string]: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../src/utils/Validator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAkB,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAgDnF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CAqDlG;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAEhH;AAGD,eAAO,MAAM,EAAE;eACF,MAAM;aACR,MAAM;cACL,MAAM;cACN,MAAM;gBACJ,OAAO;gBACP,OAAO;eACR,OAAO;gBACN,OAAO;CACpB,CAAC;;;;;mBARW,MAAM;iBACR,MAAM;kBACL,MAAM;kBACN,MAAM;oBACJ,OAAO;oBACP,OAAO;mBACR,OAAO;oBACN,OAAO;;;AAGrB,wBAA+C"}
1
+ {"version":3,"file":"Validator.d.ts","sourceRoot":"","sources":["../../src/utils/Validator.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAkB,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAgDnF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,gBAAgB,CA0DlG;AAmDD,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAsEtH;AAGD,eAAO,MAAM,EAAE;eACF,MAAM;aACR,MAAM;cACL,MAAM;cACN,MAAM;gBACJ,OAAO;gBACP,OAAO;eACR,OAAO;gBACN,OAAO;CACpB,CAAC;;;;;mBARW,MAAM;iBACR,MAAM;kBACL,MAAM;kBACN,MAAM;oBACJ,OAAO;oBACP,OAAO;mBACR,OAAO;oBACN,OAAO;;;AAGrB,wBAA+C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "canxjs",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "Ultra-fast async-first MVC backend framework for Bun runtime",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
package/src/auth/Auth.ts CHANGED
@@ -207,14 +207,25 @@ export function roles(...allowedRoles: string[]): MiddlewareHandler {
207
207
  // Session-based Auth
208
208
  // ============================================
209
209
 
210
- interface Session {
210
+ // ============================================
211
+ // Session-based Auth
212
+ // ============================================
213
+
214
+ export interface Session {
211
215
  id: string;
212
216
  userId: string | number;
213
217
  data: Record<string, unknown>;
214
218
  expiresAt: number;
215
219
  }
216
220
 
217
- class SessionStore {
221
+ export interface SessionDriver {
222
+ create(userId: string | number, data: Record<string, unknown>, maxAge: number): Promise<Session> | Session;
223
+ get(id: string): Promise<Session | null> | Session | null;
224
+ destroy(id: string): Promise<boolean> | boolean;
225
+ cleanup(): Promise<void> | void;
226
+ }
227
+
228
+ export class MemorySessionDriver implements SessionDriver {
218
229
  private sessions: Map<string, Session> = new Map();
219
230
 
220
231
  generateId(): string {
@@ -254,13 +265,49 @@ class SessionStore {
254
265
  }
255
266
  }
256
267
 
268
+ // Avoid circular dependency issues by importing types only if needed
269
+ import { DatabaseSessionDriver } from './drivers/DatabaseSessionDriver';
270
+
271
+ export class SessionStore {
272
+ private driver: SessionDriver;
273
+
274
+ constructor(driver?: SessionDriver) {
275
+ this.driver = driver || new MemorySessionDriver();
276
+ }
277
+
278
+ // Method to easily switch to database
279
+ useDatabase() {
280
+ this.driver = new DatabaseSessionDriver();
281
+ }
282
+
283
+ use(driver: SessionDriver) {
284
+ this.driver = driver;
285
+ }
286
+
287
+ async create(userId: string | number, data: Record<string, unknown> = {}, maxAge = 86400000): Promise<Session> {
288
+ return this.driver.create(userId, data, maxAge);
289
+ }
290
+
291
+ async get(id: string): Promise<Session | null> {
292
+ return this.driver.get(id);
293
+ }
294
+
295
+ async destroy(id: string): Promise<boolean> {
296
+ return this.driver.destroy(id);
297
+ }
298
+
299
+ async cleanup(): Promise<void> {
300
+ return this.driver.cleanup();
301
+ }
302
+ }
303
+
257
304
  export const sessionStore = new SessionStore();
258
305
 
259
306
  export function sessionAuth(cookieName = 'canx_session'): MiddlewareHandler {
260
307
  return async (req, res, next) => {
261
308
  const sessionId = req.cookie(cookieName);
262
309
  if (sessionId) {
263
- const session = sessionStore.get(sessionId);
310
+ const session = await sessionStore.get(sessionId);
264
311
  if (session) {
265
312
  req.context.set('session', session);
266
313
  req.context.set('user', { sub: session.userId, ...session.data });
@@ -295,4 +342,5 @@ export const auth = {
295
342
  sessions: sessionStore,
296
343
  };
297
344
 
345
+ export { DatabaseSessionDriver } from './drivers/DatabaseSessionDriver';
298
346
  export default auth;
@@ -0,0 +1,80 @@
1
+ /**
2
+ * Database Session Driver
3
+ * Stores sessions in a database table 'sessions'
4
+ */
5
+
6
+ import { Session, SessionDriver } from '../Auth';
7
+ import { Model } from '../../mvc/Model';
8
+
9
+ // Internal model for Session interaction
10
+ class SessionModel extends Model {
11
+ static tableName = 'sessions';
12
+ static primaryKey = 'id';
13
+ static timestamps = false; // We handle timestamps manually if needed
14
+ }
15
+
16
+ export class DatabaseSessionDriver implements SessionDriver {
17
+
18
+ generateId(): string {
19
+ return `sess_${Date.now().toString(36)}_${crypto.randomUUID().replace(/-/g, '')}`;
20
+ }
21
+
22
+ async create(userId: string | number, data: Record<string, unknown>, maxAge: number): Promise<Session> {
23
+ const id = this.generateId();
24
+ const expiresAt = Date.now() + maxAge;
25
+
26
+ // Convert data to JSON string for storage
27
+ const payload = JSON.stringify(data);
28
+
29
+ await SessionModel.create({
30
+ id,
31
+ user_id: userId,
32
+ payload,
33
+ last_activity: new Date(Date.now()).toISOString().slice(0, 19).replace('T', ' '),
34
+ expires_at: expiresAt
35
+ }); // We need expires_at column in DB to query efficient cleanup
36
+
37
+ return {
38
+ id,
39
+ userId,
40
+ data,
41
+ expiresAt
42
+ };
43
+ }
44
+
45
+ async get(id: string): Promise<Session | null> {
46
+ const record = await SessionModel.find(id);
47
+ if (!record) return null;
48
+
49
+ const now = Date.now();
50
+ // Check expiration
51
+ if (record.expires_at < now) {
52
+ this.destroy(id);
53
+ return null;
54
+ }
55
+
56
+ // Parse payload
57
+ let data = {};
58
+ try {
59
+ data = JSON.parse(record.payload);
60
+ } catch(e) {}
61
+
62
+ return {
63
+ id,
64
+ userId: record.user_id,
65
+ data,
66
+ expiresAt: record.expires_at
67
+ };
68
+ }
69
+
70
+ async destroy(id: string): Promise<boolean> {
71
+ const deleted = await SessionModel.deleteById(id);
72
+ return deleted > 0;
73
+ }
74
+
75
+ async cleanup(): Promise<void> {
76
+ const now = Date.now();
77
+ // DELETE FROM sessions WHERE expires_at < now
78
+ await SessionModel.query().where('expires_at', '<', now).delete();
79
+ }
80
+ }
@@ -2,9 +2,9 @@
2
2
  * CanxJS Migrations - Database schema management
3
3
  */
4
4
 
5
- import { query, execute } from '../mvc/Model';
5
+ import { query, execute, getCurrentDriver } from '../mvc/Model';
6
6
 
7
- interface Migration {
7
+ export interface Migration {
8
8
  name: string;
9
9
  up: () => Promise<void>;
10
10
  down: () => Promise<void>;
@@ -140,6 +140,11 @@ class TableBuilder {
140
140
  return this;
141
141
  }
142
142
 
143
+ primary(): this {
144
+ if (this.columns.length) this.columns[this.columns.length - 1].primary = true;
145
+ return this;
146
+ }
147
+
143
148
  index(): this {
144
149
  if (this.columns.length) this.columns[this.columns.length - 1].index = true;
145
150
  return this;
@@ -165,18 +170,26 @@ class TableBuilder {
165
170
 
166
171
  // Build SQL
167
172
  toSQL(): string {
173
+ const driver = getCurrentDriver();
174
+
168
175
  const cols = this.columns.map(col => {
169
176
  let sql = `\`${col.name}\` `;
170
177
 
171
178
  switch (col.type) {
172
- case 'id': sql += 'BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY'; break;
179
+ case 'id':
180
+ if (driver === 'sqlite') {
181
+ sql += 'INTEGER PRIMARY KEY AUTOINCREMENT';
182
+ } else {
183
+ sql += 'BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY';
184
+ }
185
+ break;
173
186
  case 'string': sql += `VARCHAR(${col.length || 255})`; break;
174
187
  case 'text': sql += 'TEXT'; break;
175
- case 'int': sql += col.unsigned ? 'INT UNSIGNED' : 'INT'; break;
176
- case 'bigint': sql += col.unsigned ? 'BIGINT UNSIGNED' : 'BIGINT'; break;
188
+ case 'int': sql += col.unsigned ? (driver === 'sqlite' ? 'INTEGER' : 'INT UNSIGNED') : 'INT'; break;
189
+ case 'bigint': sql += col.unsigned ? (driver === 'sqlite' ? 'INTEGER' : 'BIGINT UNSIGNED') : 'BIGINT'; break;
177
190
  case 'float': sql += 'FLOAT'; break;
178
191
  case 'decimal': sql += `DECIMAL(${col.length || 10}, 2)`; break;
179
- case 'boolean': sql += 'TINYINT(1)'; break;
192
+ case 'boolean': sql += driver === 'sqlite' ? 'INTEGER' : 'TINYINT(1)'; break;
180
193
  case 'date': sql += 'DATE'; break;
181
194
  case 'datetime': sql += 'DATETIME'; break;
182
195
  case 'timestamp': sql += 'TIMESTAMP'; break;
@@ -191,6 +204,7 @@ class TableBuilder {
191
204
  sql += ` DEFAULT ${def}`;
192
205
  }
193
206
  if (col.unique) sql += ' UNIQUE';
207
+ if (col.primary) sql += ' PRIMARY KEY';
194
208
  }
195
209
 
196
210
  return sql;
@@ -204,11 +218,15 @@ class TableBuilder {
204
218
  if (ref.onUpdate) fk += ` ON UPDATE ${ref.onUpdate}`;
205
219
  return fk;
206
220
  });
221
+
222
+ // SQLite doesn't support engine configuration
223
+ const suffix = driver === 'sqlite' ? '' : ' ENGINE=InnoDB DEFAULT CHARSET=utf8mb4';
207
224
 
208
- return `CREATE TABLE \`${this.tableName}\` (\n ${[...cols, ...fks].join(',\n ')}\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4`;
225
+ return `CREATE TABLE \`${this.tableName}\` (\n ${[...cols, ...fks].join(',\n ')}\n)${suffix}`;
209
226
  }
210
227
  }
211
228
 
229
+
212
230
  // ============================================
213
231
  // Schema Facade
214
232
  // ============================================
@@ -236,11 +254,22 @@ export const Schema = {
236
254
  },
237
255
 
238
256
  async hasTable(table: string): Promise<boolean> {
257
+ const driver = getCurrentDriver();
258
+ if (driver === 'sqlite') {
259
+ const result = await query<{ count: number }>(`SELECT count(*) as count FROM sqlite_master WHERE type='table' AND name='${table}'`);
260
+ // @ts-ignore
261
+ return (result[0]?.count || result[0]?.['count(*)']) > 0;
262
+ }
239
263
  const result = await query<any>(`SHOW TABLES LIKE '${table}'`);
240
264
  return result.length > 0;
241
265
  },
242
266
 
243
267
  async hasColumn(table: string, column: string): Promise<boolean> {
268
+ const driver = getCurrentDriver();
269
+ if (driver === 'sqlite') {
270
+ const result = await query(`PRAGMA table_info(${table})`);
271
+ return (result as any[]).some(c => c.name === column);
272
+ }
244
273
  const result = await query<any>(`SHOW COLUMNS FROM \`${table}\` LIKE '${column}'`);
245
274
  return result.length > 0;
246
275
  },
@@ -295,7 +324,7 @@ class Migrator {
295
324
  console.log(`[Migration] Running: ${migration.name}`);
296
325
  await migration.up();
297
326
  await execute(
298
- 'INSERT INTO migrations (name, batch, executed_at) VALUES (?, ?, NOW())',
327
+ 'INSERT INTO migrations (name, batch, executed_at) VALUES (?, ?, CURRENT_TIMESTAMP)',
299
328
  [migration.name, batch]
300
329
  );
301
330
  }
@@ -0,0 +1,18 @@
1
+ import { Schema, defineMigration } from '../Migration';
2
+
3
+ export default defineMigration('create_sessions_table',
4
+ async () => {
5
+ // Up
6
+ await Schema.create('sessions', (table) => {
7
+ table.string('id').primary(); // Custom Session ID
8
+ table.string('user_id').index();
9
+ table.text('payload');
10
+ table.integer('expires_at').index(); // Unix timestamp
11
+ table.timestamp('last_activity');
12
+ });
13
+ },
14
+ async () => {
15
+ // Down
16
+ await Schema.dropIfExists('sessions');
17
+ }
18
+ );
package/src/index.ts CHANGED
@@ -56,6 +56,7 @@ export {
56
56
  roles,
57
57
  sessionAuth,
58
58
  sessionStore,
59
+ DatabaseSessionDriver,
59
60
  } from './auth/Auth';
60
61
 
61
62
  // ============================================