@orchestr-sh/orchestr 1.2.0 → 1.2.1

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 (32) hide show
  1. package/README.md +7 -0
  2. package/dist/Routing/Route.d.ts +1 -1
  3. package/dist/Routing/Route.d.ts.map +1 -1
  4. package/dist/Routing/Router.d.ts +5 -0
  5. package/dist/Routing/Router.d.ts.map +1 -1
  6. package/dist/Routing/Router.js +19 -0
  7. package/dist/Routing/Router.js.map +1 -1
  8. package/package.json +1 -1
  9. package/dist/Database/Eloquent/Builder.d.ts +0 -76
  10. package/dist/Database/Eloquent/Builder.d.ts.map +0 -1
  11. package/dist/Database/Eloquent/Builder.js +0 -154
  12. package/dist/Database/Eloquent/Builder.js.map +0 -1
  13. package/dist/Database/Eloquent/Collection.d.ts +0 -137
  14. package/dist/Database/Eloquent/Collection.d.ts.map +0 -1
  15. package/dist/Database/Eloquent/Collection.js +0 -284
  16. package/dist/Database/Eloquent/Collection.js.map +0 -1
  17. package/dist/Database/Eloquent/Concerns/HasAttributes.d.ts +0 -44
  18. package/dist/Database/Eloquent/Concerns/HasAttributes.d.ts.map +0 -1
  19. package/dist/Database/Eloquent/Concerns/HasAttributes.js +0 -8
  20. package/dist/Database/Eloquent/Concerns/HasAttributes.js.map +0 -1
  21. package/dist/Database/Eloquent/Concerns/HasTimestamps.d.ts +0 -41
  22. package/dist/Database/Eloquent/Concerns/HasTimestamps.d.ts.map +0 -1
  23. package/dist/Database/Eloquent/Concerns/HasTimestamps.js +0 -14
  24. package/dist/Database/Eloquent/Concerns/HasTimestamps.js.map +0 -1
  25. package/dist/Database/Eloquent/Model.d.ts +0 -265
  26. package/dist/Database/Eloquent/Model.d.ts.map +0 -1
  27. package/dist/Database/Eloquent/Model.js +0 -523
  28. package/dist/Database/Eloquent/Model.js.map +0 -1
  29. package/dist/Database/Eloquent/SoftDeletes.d.ts +0 -41
  30. package/dist/Database/Eloquent/SoftDeletes.d.ts.map +0 -1
  31. package/dist/Database/Eloquent/SoftDeletes.js +0 -22
  32. package/dist/Database/Eloquent/SoftDeletes.js.map +0 -1
package/README.md CHANGED
@@ -214,6 +214,8 @@ Route.get('/profile', handler).addMiddleware(authMiddleware);
214
214
  MVC pattern with base controller:
215
215
 
216
216
  ```typescript
217
+ import { Controller, Request, Response, Route } from 'orchestr';
218
+
217
219
  class UserController extends Controller {
218
220
  async index(req: Request, res: Response) {
219
221
  return res.json({ users: [] });
@@ -232,6 +234,11 @@ class UserController extends Controller {
232
234
  return res.status(201).json({ user: validated });
233
235
  }
234
236
  }
237
+
238
+ // Register controller routes
239
+ Route.get('/users', [UserController, 'index']);
240
+ Route.get('/users/:id', [UserController, 'show']);
241
+ Route.post('/users', [UserController, 'store']);
235
242
  ```
236
243
 
237
244
  ### Request
@@ -1,7 +1,7 @@
1
1
  import { Request } from './Request';
2
2
  import { Response } from './Response';
3
3
  export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD';
4
- export type RouteAction = Function | string;
4
+ export type RouteAction = Function | string | [new (...args: any[]) => any, string];
5
5
  export type Middleware = (req: Request, res: Response, next: () => void) => void | Promise<void>;
6
6
  /**
7
7
  * Route - Represents a single route in the application
@@ -1 +1 @@
1
- {"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/Routing/Route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAC1F,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;AAC5C,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjG;;;GAGG;AACH,qBAAa,KAAK;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,UAAU,EAAE,CAAM;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAC/C,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAgB;gBAE1B,OAAO,EAAE,UAAU,GAAG,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IAOhF;;OAEG;IACH,OAAO,CAAC,YAAY;IAoBpB;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAQ9C;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWxB;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IAM1D;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIvC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAGnE"}
1
+ {"version":3,"file":"Route.d.ts","sourceRoot":"","sources":["../../src/Routing/Route.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAC1F,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,MAAM,CAAC,CAAC;AACpF,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,IAAI,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEjG;;;GAGG;AACH,qBAAa,KAAK;IACT,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,EAAE,WAAW,CAAC;IACpB,UAAU,EAAE,UAAU,EAAE,CAAM;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;IAC/C,OAAO,CAAC,QAAQ,CAAC,CAAS;IAC1B,OAAO,CAAC,cAAc,CAAgB;gBAE1B,OAAO,EAAE,UAAU,GAAG,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW;IAOhF;;OAEG;IACH,OAAO,CAAC,YAAY;IAoBpB;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO;IAQ9C;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWxB;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,UAAU,EAAE,GAAG,IAAI;IAM1D;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK3B;;OAEG;IACH,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAIvC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;CAGnE"}
@@ -101,6 +101,11 @@ export declare class Router {
101
101
  * Run the route action
102
102
  */
103
103
  private runRoute;
104
+ /**
105
+ * Call a controller action using tuple format
106
+ * Laravel-style: [UserController, 'index']
107
+ */
108
+ private callControllerTuple;
104
109
  /**
105
110
  * Call a controller action
106
111
  * Laravel: 'UserController@index'
@@ -1 +1 @@
1
- {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/Routing/Router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,WAAW,CAAiC;gBAExC,GAAG,EAAE,WAAW;IAI5B;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI7C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI9C;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI/C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAIrE;;OAEG;IACH,OAAO,CAAC,QAAQ;IAahB;;;OAGG;IACH,KAAK,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAMnE;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAKtC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI1C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,MAAM;IASd;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAWrD;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1D;;OAEG;YACW,aAAa;IAqB3B;;OAEG;YACW,QAAQ;IAmBtB;;;OAGG;YACW,oBAAoB;IAWlC;;OAEG;IACH,SAAS,IAAI,KAAK,EAAE;CAGrB"}
1
+ {"version":3,"file":"Router.d.ts","sourceRoot":"","sources":["../../src/Routing/Router.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,UAAU,GAAG,UAAU,EAAE,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,GAAG,CAAc;IACzB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,WAAW,CAAiC;gBAExC,GAAG,EAAE,WAAW;IAI5B;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI7C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI9C;;;OAGG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI/C;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAI5C;;;OAGG;IACH,KAAK,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,KAAK;IAIrE;;OAEG;IACH,OAAO,CAAC,QAAQ;IAahB;;;OAGG;IACH,KAAK,CAAC,UAAU,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAMnE;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,IAAI;IAKtC;;OAEG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI1C;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;OAEG;IACH,OAAO,CAAC,MAAM;IASd;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI;IAWrD;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAuB1D;;OAEG;YACW,aAAa;IAqB3B;;OAEG;YACW,QAAQ;IAsBtB;;;OAGG;YACW,mBAAmB;IAqBjC;;;OAGG;YACW,oBAAoB;IAWlC;;OAEG;IACH,SAAS,IAAI,KAAK,EAAE;CAGrB"}
@@ -185,6 +185,10 @@ class Router {
185
185
  // Direct closure
186
186
  result = await action(req, res);
187
187
  }
188
+ else if (Array.isArray(action)) {
189
+ // Controller tuple: [ControllerClass, 'method']
190
+ result = await this.callControllerTuple(action, req, res);
191
+ }
188
192
  else if (typeof action === 'string') {
189
193
  // Controller@method string
190
194
  result = await this.callControllerAction(action, req, res);
@@ -194,6 +198,21 @@ class Router {
194
198
  res.send(result);
195
199
  }
196
200
  }
201
+ /**
202
+ * Call a controller action using tuple format
203
+ * Laravel-style: [UserController, 'index']
204
+ */
205
+ async callControllerTuple(action, req, res) {
206
+ const [ControllerClass, methodName] = action;
207
+ // Resolve the controller from the container
208
+ const controller = this.app.make(ControllerClass);
209
+ // Verify the method exists on the controller
210
+ if (typeof controller[methodName] !== 'function') {
211
+ throw new Error(`Method [${methodName}] does not exist on controller [${ControllerClass.name}].`);
212
+ }
213
+ // Call the controller method
214
+ return await controller[methodName](req, res);
215
+ }
197
216
  /**
198
217
  * Call a controller action
199
218
  * Laravel: 'UserController@index'
@@ -1 +1 @@
1
- {"version":3,"file":"Router.js","sourceRoot":"","sources":["../../src/Routing/Router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Router.js","sourceRoot":"","sources":["../../src/Routing/Router.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@orchestr-sh/orchestr",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "A 1:1 Laravel replica in TypeScript - Brings Laravel's elegant syntax and architecture to Node.js",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,76 +0,0 @@
1
- /**
2
- * Eloquent Builder
3
- *
4
- * Extends the query builder to work with Eloquent models
5
- */
6
- import { Builder as QueryBuilder } from '../Query/Builder';
7
- import { DatabaseAdapter } from '../Contracts/DatabaseAdapter';
8
- import { Model } from './Model';
9
- export declare class Builder<T extends Model> extends QueryBuilder<T> {
10
- /**
11
- * The model being queried
12
- */
13
- protected model: T;
14
- /**
15
- * The relationships that should be eager loaded
16
- */
17
- protected eagerLoad: Record<string, any>;
18
- constructor(adapter: DatabaseAdapter, model: T);
19
- /**
20
- * Find a model by its primary key
21
- */
22
- find(id: any): Promise<T | null>;
23
- /**
24
- * Execute the query and get all results
25
- */
26
- get(): Promise<T[]>;
27
- /**
28
- * Get the first record
29
- */
30
- first(): Promise<T | null>;
31
- /**
32
- * Create a collection of models from plain arrays
33
- */
34
- protected hydrate(items: any[]): T[];
35
- /**
36
- * Create a new instance of the model
37
- */
38
- protected newModelInstance(attributes?: Record<string, any>, exists?: boolean): T;
39
- /**
40
- * Set the relationships that should be eager loaded
41
- */
42
- with(relations: string | string[]): this;
43
- /**
44
- * Create a new model and store it in the database
45
- */
46
- create(attributes: Record<string, any>): Promise<T>;
47
- /**
48
- * Update records in the database
49
- */
50
- update(values: Record<string, any>): Promise<number>;
51
- /**
52
- * Delete records from the database
53
- */
54
- delete(): Promise<number>;
55
- /**
56
- * Get a paginated result
57
- */
58
- paginate(perPage?: number, page?: number): Promise<{
59
- data: T[];
60
- total: number;
61
- perPage: number;
62
- currentPage: number;
63
- lastPage: number;
64
- from: number;
65
- to: number;
66
- }>;
67
- /**
68
- * Chunk the results of the query
69
- */
70
- chunk(count: number, callback: (models: T[]) => Promise<boolean | void>): Promise<void>;
71
- /**
72
- * Clone the query builder
73
- */
74
- clone(): Builder<T>;
75
- }
76
- //# sourceMappingURL=Builder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Builder.d.ts","sourceRoot":"","sources":["../../../src/Database/Eloquent/Builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGhC,qBAAa,OAAO,CAAC,CAAC,SAAS,KAAK,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IAC3D;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAM;gBAElC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;IAM9C;;OAEG;IACG,IAAI,CAAC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAItC;;OAEG;IACG,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC;IAKzB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAQhC;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IAIpC;;OAEG;IACH,SAAS,CAAC,gBAAgB,CAAC,UAAU,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,EAAE,MAAM,GAAE,OAAe,GAAG,CAAC;IAQ5F;;OAEG;IACH,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI;IAUxC;;OAEG;IACG,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAMzD;;OAEG;IACG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAI1D;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IAI/B;;OAEG;IACG,QAAQ,CAAC,OAAO,GAAE,MAAW,EAAE,IAAI,GAAE,MAAU,GAAG,OAAO,CAAC;QAC9D,IAAI,EAAE,CAAC,EAAE,CAAC;QACV,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,WAAW,EAAE,MAAM,CAAC;QACpB,QAAQ,EAAE,MAAM,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;KACZ,CAAC;IAqBF;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,CAAC,EAAE,KAAK,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAsB7F;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC;CAgBpB"}
@@ -1,154 +0,0 @@
1
- "use strict";
2
- /**
3
- * Eloquent Builder
4
- *
5
- * Extends the query builder to work with Eloquent models
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.Builder = void 0;
9
- const Builder_1 = require("../Query/Builder");
10
- class Builder extends Builder_1.Builder {
11
- /**
12
- * The model being queried
13
- */
14
- model;
15
- /**
16
- * The relationships that should be eager loaded
17
- */
18
- eagerLoad = {};
19
- constructor(adapter, model) {
20
- super(adapter);
21
- this.model = model;
22
- this.from(model.getTable());
23
- }
24
- /**
25
- * Find a model by its primary key
26
- */
27
- async find(id) {
28
- return this.where(this.model.getKeyName(), '=', id).first();
29
- }
30
- /**
31
- * Execute the query and get all results
32
- */
33
- async get() {
34
- const results = await super.get();
35
- return this.hydrate(results);
36
- }
37
- /**
38
- * Get the first record
39
- */
40
- async first() {
41
- const result = await super.first();
42
- if (!result) {
43
- return null;
44
- }
45
- return this.newModelInstance(result, true);
46
- }
47
- /**
48
- * Create a collection of models from plain arrays
49
- */
50
- hydrate(items) {
51
- return items.map((item) => this.newModelInstance(item, true));
52
- }
53
- /**
54
- * Create a new instance of the model
55
- */
56
- newModelInstance(attributes = {}, exists = false) {
57
- const ModelClass = this.model.constructor;
58
- const instance = new ModelClass(attributes);
59
- instance.exists = exists;
60
- instance.syncOriginal();
61
- return instance;
62
- }
63
- /**
64
- * Set the relationships that should be eager loaded
65
- */
66
- with(relations) {
67
- const relationArray = Array.isArray(relations) ? relations : [relations];
68
- for (const relation of relationArray) {
69
- this.eagerLoad[relation] = () => { };
70
- }
71
- return this;
72
- }
73
- /**
74
- * Create a new model and store it in the database
75
- */
76
- async create(attributes) {
77
- const instance = this.newModelInstance(attributes);
78
- await instance.save();
79
- return instance;
80
- }
81
- /**
82
- * Update records in the database
83
- */
84
- async update(values) {
85
- return await super.update(values);
86
- }
87
- /**
88
- * Delete records from the database
89
- */
90
- async delete() {
91
- return await super.delete();
92
- }
93
- /**
94
- * Get a paginated result
95
- */
96
- async paginate(perPage = 15, page = 1) {
97
- const total = await this.clone().count();
98
- const offset = (page - 1) * perPage;
99
- const data = await this.clone().offset(offset).limit(perPage).get();
100
- const lastPage = Math.ceil(total / perPage);
101
- const from = total > 0 ? offset + 1 : 0;
102
- const to = Math.min(offset + perPage, total);
103
- return {
104
- data,
105
- total,
106
- perPage,
107
- currentPage: page,
108
- lastPage,
109
- from,
110
- to,
111
- };
112
- }
113
- /**
114
- * Chunk the results of the query
115
- */
116
- async chunk(count, callback) {
117
- let page = 1;
118
- do {
119
- const results = await this.clone()
120
- .offset((page - 1) * count)
121
- .limit(count)
122
- .get();
123
- if (results.length === 0) {
124
- break;
125
- }
126
- const shouldContinue = await callback(results);
127
- if (shouldContinue === false) {
128
- break;
129
- }
130
- page++;
131
- } while (true);
132
- }
133
- /**
134
- * Clone the query builder
135
- */
136
- clone() {
137
- const cloned = new Builder(this.adapter, this.model);
138
- cloned._columns = [...this._columns];
139
- cloned._distinct = this._distinct;
140
- cloned._table = this._table;
141
- cloned._wheres = [...this._wheres];
142
- cloned._joins = [...this._joins];
143
- cloned._orders = [...this._orders];
144
- cloned._groups = [...this._groups];
145
- cloned._havings = [...this._havings];
146
- cloned._limit = this._limit;
147
- cloned._offset = this._offset;
148
- cloned._bindings = [...this._bindings];
149
- cloned.eagerLoad = { ...this.eagerLoad };
150
- return cloned;
151
- }
152
- }
153
- exports.Builder = Builder;
154
- //# sourceMappingURL=Builder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Builder.js","sourceRoot":"","sources":["../../../src/Database/Eloquent/Builder.ts"],"names":[],"mappings":"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"}
@@ -1,137 +0,0 @@
1
- /**
2
- * Collection Class
3
- *
4
- * A collection of Eloquent models
5
- */
6
- import { Model } from './Model';
7
- export declare class Collection<T extends Model> extends Array<T> {
8
- /**
9
- * Create a new collection
10
- */
11
- constructor(items?: T[]);
12
- /**
13
- * Get all items in the collection
14
- */
15
- all(): T[];
16
- /**
17
- * Get the first item from the collection
18
- */
19
- first(callback?: (item: T) => boolean): T | undefined;
20
- /**
21
- * Get the last item from the collection
22
- */
23
- last(callback?: (item: T) => boolean): T | undefined;
24
- /**
25
- * Reject items from the collection using a callback
26
- */
27
- reject(callback: (item: T, index: number) => boolean): Collection<T>;
28
- /**
29
- * Map the collection and return a new collection
30
- */
31
- mapIntoCollection<U>(callback: (item: T, index: number) => U): U[];
32
- /**
33
- * Get a collection with only unique items
34
- */
35
- unique(key?: keyof T): Collection<T>;
36
- /**
37
- * Get the collection of items as a plain array
38
- */
39
- toArray(): Record<string, any>[];
40
- /**
41
- * Get the collection of items as JSON
42
- */
43
- toJSON(): Record<string, any>[];
44
- /**
45
- * Determine if the collection is empty
46
- */
47
- isEmpty(): boolean;
48
- /**
49
- * Determine if the collection is not empty
50
- */
51
- isNotEmpty(): boolean;
52
- /**
53
- * Get the sum of the given values
54
- */
55
- sum(key?: keyof T): number;
56
- /**
57
- * Get the average value of a given key
58
- */
59
- avg(key?: keyof T): number;
60
- /**
61
- * Get the min value of a given key
62
- */
63
- min(key?: keyof T): number | undefined;
64
- /**
65
- * Get the max value of a given key
66
- */
67
- max(key?: keyof T): number | undefined;
68
- /**
69
- * Pluck an attribute from each model
70
- */
71
- pluck(key: keyof T): any[];
72
- /**
73
- * Get the keys of the collection items
74
- */
75
- modelKeys(): any[];
76
- /**
77
- * Sort the collection by a callback or key
78
- */
79
- sortBy(keyOrCallback: keyof T | ((a: T, b: T) => number)): Collection<T>;
80
- /**
81
- * Sort the collection in descending order
82
- */
83
- sortByDesc(key: keyof T): Collection<T>;
84
- /**
85
- * Group the collection by a given key
86
- */
87
- groupBy(key: keyof T): Record<string, Collection<T>>;
88
- /**
89
- * Chunk the collection into smaller collections
90
- */
91
- chunkModels(size: number): Collection<T>[];
92
- /**
93
- * Take the first n items
94
- */
95
- take(limit: number): Collection<T>;
96
- /**
97
- * Skip the first n items
98
- */
99
- skip(count: number): Collection<T>;
100
- /**
101
- * Merge the collection with the given items
102
- */
103
- merge(items: T[]): Collection<T>;
104
- /**
105
- * Get the collection without the specified items
106
- */
107
- except(keys: any[]): Collection<T>;
108
- /**
109
- * Get only the specified items from the collection
110
- */
111
- only(keys: any[]): Collection<T>;
112
- /**
113
- * Load a set of relationships onto the collection
114
- */
115
- load(relations: string | string[]): Promise<this>;
116
- /**
117
- * Find a model in the collection by key
118
- */
119
- find(keyOrCallback: any | ((item: T) => boolean)): T | undefined;
120
- /**
121
- * Determine if a key exists in the collection
122
- */
123
- contains(keyOrCallback: any | ((item: T) => boolean)): boolean;
124
- /**
125
- * Get the items with the specified keys
126
- */
127
- whereIn(key: keyof T, values: any[]): Collection<T>;
128
- /**
129
- * Get the items where a key is not in the given values
130
- */
131
- whereNotIn(key: keyof T, values: any[]): Collection<T>;
132
- /**
133
- * Count the number of items in the collection
134
- */
135
- count(): number;
136
- }
137
- //# sourceMappingURL=Collection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Collection.d.ts","sourceRoot":"","sources":["../../../src/Database/Eloquent/Collection.ts"],"names":[],"mappings":"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"}