tspace-mysql 1.9.2 → 1.9.3-beta.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 (38) hide show
  1. package/README.md +142 -17
  2. package/dist/lib/core/Abstracts/AbstractBuilder.d.ts +0 -1
  3. package/dist/lib/core/Abstracts/AbstractBuilder.js.map +1 -1
  4. package/dist/lib/core/Blueprint.d.ts +43 -10
  5. package/dist/lib/core/Blueprint.js +43 -2
  6. package/dist/lib/core/Blueprint.js.map +1 -1
  7. package/dist/lib/core/Builder.d.ts +5 -5
  8. package/dist/lib/core/Builder.js +15 -12
  9. package/dist/lib/core/Builder.js.map +1 -1
  10. package/dist/lib/core/Cache/MemoryCache.js +9 -4
  11. package/dist/lib/core/Cache/MemoryCache.js.map +1 -1
  12. package/dist/lib/core/Contracts/Audit.d.ts +2 -2
  13. package/dist/lib/core/Contracts/Logger.d.ts +2 -2
  14. package/dist/lib/core/Model.d.ts +169 -29
  15. package/dist/lib/core/Model.js +153 -4
  16. package/dist/lib/core/Model.js.map +1 -1
  17. package/dist/lib/core/{Queue.d.ts → Queue/index.d.ts} +87 -90
  18. package/dist/lib/core/Queue/index.js +282 -0
  19. package/dist/lib/core/Queue/index.js.map +1 -0
  20. package/dist/lib/core/Queue/types.d.ts +31 -0
  21. package/dist/lib/core/Queue/types.js +3 -0
  22. package/dist/lib/core/Queue/types.js.map +1 -0
  23. package/dist/lib/core/Queue/worker.d.ts +102 -0
  24. package/dist/lib/core/{Queue.js → Queue/worker.js} +133 -268
  25. package/dist/lib/core/Queue/worker.js.map +1 -0
  26. package/dist/lib/core/Repository.d.ts +40 -20
  27. package/dist/lib/core/Repository.js +35 -14
  28. package/dist/lib/core/Repository.js.map +1 -1
  29. package/dist/lib/core/UtilityTypes.d.ts +9 -7
  30. package/dist/lib/core/UtilityTypes.js.map +1 -1
  31. package/dist/lib/types/decorator/index.d.ts +3 -0
  32. package/dist/lib/types/index.d.ts +17 -16
  33. package/dist/lib/types/repository/index.d.ts +3 -3
  34. package/dist/lib/utils/index.d.ts +4 -2
  35. package/dist/lib/utils/index.js +17 -1
  36. package/dist/lib/utils/index.js.map +1 -1
  37. package/package.json +1 -1
  38. package/dist/lib/core/Queue.js.map +0 -1
package/README.md CHANGED
@@ -43,7 +43,29 @@ npm install -g tspace-mysql
43
43
 
44
44
  ## Documentation
45
45
 
46
- See the [`docs`](https://thanathip41.github.io/tspace-mysql) directory for full documentation.
46
+ ### For LLMs & AI Assistants
47
+
48
+ 📚 **Complete Skills Documentation** is available in the [`skills/`](./skills) folder. This includes comprehensive, verified guides for:
49
+
50
+ - Model Setup & Blueprint
51
+ - Query Builder & SQL Operations
52
+ - Relationships (hasOne, hasMany, belongsTo, belongsToMany)
53
+ - Repository Pattern
54
+ - Decorators
55
+ - Type Safety (T namespace)
56
+ - Transactions
57
+ - Caching (DB_CACHE, .cache())
58
+ - Queue System
59
+ - CLI Commands
60
+ - Complete Real-World Examples
61
+
62
+ All skills documentation is **100% verified** against the source code.
63
+
64
+ ### Human-Readable Documentation
65
+
66
+ See the [`docs/`](./docs) directory for full documentation with examples.
67
+
68
+ Online: https://thanathip41.github.io/tspace-mysql
47
69
 
48
70
  ## TypeScript
49
71
 
@@ -168,6 +190,8 @@ npm install -D typescript@5.9.3
168
190
  - [Repository Transactions](#repository-transactions)
169
191
  - [Repository Relations](#repository-relations)
170
192
  - [Queue](#queue)
193
+ - [Queue Events](#queue-events)
194
+ - [Queue Type-safe Events and Jobs](#queue-type-safe-events-and-jobs)
171
195
  - [View](#view)
172
196
  - [Stored Procedure](#stored-procedure)
173
197
  - [Blueprint](#blueprint)
@@ -2966,22 +2990,27 @@ import { PostUser } from './PostUser'
2966
2990
 
2967
2991
  class UserObserve {
2968
2992
 
2969
- public selected(results) {
2970
- console.log({ results , selected : true })
2971
- }
2993
+ public selected(results) {
2994
+ console.log({ results , selected : true })
2995
+ }
2972
2996
 
2973
- public created(results) {
2974
- console.log({ results , created : true })
2975
- }
2997
+ public created(results) {
2998
+ console.log({ results , created : true })
2999
+ }
2976
3000
 
2977
- public updated(results) {
2978
- console.log({ results , updated : true })
2979
- }
3001
+ public updated(results) {
3002
+ console.log({ results , updated : true })
3003
+ }
2980
3004
 
2981
- public deleted(results) {
2982
- console.log({ results , deleted : true })
2983
- }
3005
+ public deleted(results) {
3006
+ console.log({ results , deleted : true })
2984
3007
  }
3008
+ }
3009
+
3010
+ enum UserRole {
3011
+ Admin = 'admin',
3012
+ User = 'user',
3013
+ }
2985
3014
 
2986
3015
  @Pattern('camelCase')
2987
3016
  @Observer(UserObserve)
@@ -3017,6 +3046,9 @@ class User extends Model {
3017
3046
  @Column(() => Blueprint.varchar(50).null())
3018
3047
  public password !: string
3019
3048
 
3049
+ @Column(() => Blueprint.enum(UserRole).default(UserRole.Admin))
3050
+ public role !: `${UserRole}`
3051
+
3020
3052
  @Column(() => Blueprint.timestamp().null())
3021
3053
  public createdAt!: Date
3022
3054
 
@@ -4162,9 +4194,14 @@ const fakeSendEmail = async (job: Job) => {
4162
4194
 
4163
4195
  // start the Queue
4164
4196
  await Queue.start({
4165
- inspect : true,
4166
- flush : false, // flush = true -> remove all jobs
4167
- hostname: 'pod1'
4197
+ inspect : true, // @default false, enable queue workflow inspection
4198
+ flush : false, // @default false, true -> remove all jobs
4199
+ hostname : 'pod1', // @default null, worker hostname
4200
+ maxIdleRetries : 8, // @default 5, maximum retries when no jobs are available
4201
+ poll : {
4202
+ enabled : true, // @default false, enable periodic job checking
4203
+ timeout : 10_000 // @default 60_000, polling interval
4204
+ };
4168
4205
  });
4169
4206
 
4170
4207
  const worker = 20;
@@ -4204,6 +4241,83 @@ for(let j = 1; j <= worker * 500; j++) {
4204
4241
  // if you want to end the Queue
4205
4242
  // await Queue.end()
4206
4243
 
4244
+ ```
4245
+ ### Queue Events
4246
+
4247
+ Queue also supports an event-based publish/subscribe pattern.
4248
+
4249
+ One event can have multiple subscribers.
4250
+ Use Queue.subscribe() to subscribe a job handler to an event
4251
+ ```js
4252
+ // user.created
4253
+ // │
4254
+ // ├── email
4255
+ // ├── notify
4256
+ // └── analytics
4257
+
4258
+ Queue.subscribe(
4259
+ 'user.created',
4260
+ 'email',
4261
+ async (job) => {
4262
+ await new Promise(r => setTimeout(r, 1000));
4263
+ console.log('Send e-mail : ' + job.payload.email)
4264
+ return 'Done!';
4265
+ },
4266
+ { concurrency: 2 }
4267
+ );
4268
+
4269
+ Queue.subscribe(
4270
+ 'user.created',
4271
+ 'notify',
4272
+ async (job) => {
4273
+ await new Promise(r => setTimeout(r, 1000));
4274
+ console.log('notify : ' + job.payload.email)
4275
+ return 'Done!';
4276
+ },
4277
+ { concurrency: 3 }
4278
+ );
4279
+ ```
4280
+ Use Queue.publish() to publish an event.
4281
+ ```js
4282
+ for (let i = 1; i <= 5; i++) {
4283
+ // will send to jobs ['email','notify'];
4284
+ Queue.publish(
4285
+ 'user.created',
4286
+ { id : i , email : `user${i}@gmail.com` },
4287
+ {
4288
+ priority: i
4289
+ }
4290
+ );
4291
+ }
4292
+
4293
+ ```
4294
+ ### Queue Type-safe Events and Jobs
4295
+ Queue optionally supports type-safe event and job names through `QueueContract`.
4296
+
4297
+ The feature is optional.
4298
+
4299
+ If the application does not define a contract, the Queue API can continue to accept normal string names.
4300
+
4301
+ Create a `types.d.ts` file in your application:
4302
+ ```js
4303
+ import { QueueContract } from 'tspace-mysql';
4304
+
4305
+ declare module 'tspace-mysql' {
4306
+ interface QueueContract {
4307
+ events: {
4308
+ 'user.created': [
4309
+ 'email',
4310
+ 'notify',
4311
+ ];
4312
+ };
4313
+
4314
+ jobs: [
4315
+ 'resize-video',
4316
+ 'cleanup',
4317
+ ];
4318
+ }
4319
+ }
4320
+
4207
4321
  ```
4208
4322
 
4209
4323
  ## View
@@ -4393,7 +4507,13 @@ Blueprint is a tool used for defining database schemas programmatically.
4393
4507
  It allows developers to describe the structure of their database tables using a simple and intuitive syntax rather than writing SQL queries directly., you may use the:
4394
4508
 
4395
4509
  ```js
4396
- import { Schema , Blueprint , DB } from 'tspace-mysql'
4510
+ import { Schema , Blueprint , DB } from 'tspace-mysql';
4511
+
4512
+ enum UserRole {
4513
+ Admin = 'admin',
4514
+ User = 'user',
4515
+ }
4516
+
4397
4517
  (async () => {
4398
4518
  await new Schema().table('users', {
4399
4519
  id : Blueprint.int().notNull().primary().autoIncrement(),
@@ -4404,6 +4524,7 @@ import { Schema , Blueprint , DB } from 'tspace-mysql'
4404
4524
  email_verify : Blueprint.tinyInt(),
4405
4525
  password : Blueprint.varchar(255),
4406
4526
  json : Blueprint.json(),
4527
+ role : Blueprint.enum(UserRole).default(UserRole.Admin)
4407
4528
  created_at : Blueprint.null().timestamp(),
4408
4529
  updated_at : Blueprint.null().timestamp(),
4409
4530
  deleted_at : Blueprint.null().timestamp()
@@ -4436,6 +4557,10 @@ enum(...n)
4436
4557
  date()
4437
4558
  dateTime()
4438
4559
  timestamp ()
4560
+ raw({
4561
+ type : 'DECIMAL(10, 2)',
4562
+ attribute : 'DEFAULT(1)'
4563
+ })
4439
4564
 
4440
4565
  /**
4441
4566
  * To add attributes of the schema to the database
@@ -126,7 +126,6 @@ declare abstract class AbstractBuilder {
126
126
  abstract getGroupBy(column: string): Promise<Map<string | number, any[]>>;
127
127
  abstract findGroupBy(column: string): Promise<Map<string | number, any[]>>;
128
128
  abstract toArray(column: string): Promise<any[]>;
129
- abstract toJSON(): Promise<string>;
130
129
  abstract toSQL(): string;
131
130
  abstract toString(): string;
132
131
  abstract count(column: string): Promise<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractBuilder.js","sourceRoot":"","sources":["../../../../src/lib/core/Abstracts/AbstractBuilder.ts"],"names":[],"mappings":";;;AAGA,yCAA4C;AAO5C,MAAe,eAAe;IAEhB,MAAM,CAAU;IAEhB,SAAS,GAAY,MAAM,CAAC,eAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAEnD,YAAY,GAAG;QACrB,IAAI,EAAO,eAAM,CAAC,IAAI;QACtB,IAAI,EAAO,MAAM,CAAC,eAAM,CAAC,IAAI,CAAC;QAC9B,QAAQ,EAAG,MAAM,CAAC,eAAM,CAAC,QAAQ,CAAC;QAClC,QAAQ,EAAG,MAAM,CAAC,eAAM,CAAC,QAAQ,CAAC;QAClC,QAAQ,EAAG,eAAM,CAAC,QAAQ;KAC7B,CAAA;IAES,OAAO,GAAI,MAAM,CAAC,eAAM,CAAC,MAAM,IAAI,OAAO,CAAY,CAAC;IAEvD,QAAQ,GAAa,OAAO,CAAC,eAAM,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;IAEtD,UAAU,CAGlB;IAEQ,MAAM,CAAgB;IAEtB,KAAK,GAMX;QACA,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,GAAE,CAAC;QAC1B,GAAG,EAAE,CAAC,IAAU,EAAE,EAAE,GAAE,CAAC;QACvB,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC;QACb,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;QACtB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;KACxB,CAAA;CAyFJ;AAES,0CAAe;AACzB,kBAAe,eAAe,CAAA"}
1
+ {"version":3,"file":"AbstractBuilder.js","sourceRoot":"","sources":["../../../../src/lib/core/Abstracts/AbstractBuilder.ts"],"names":[],"mappings":";;;AAGA,yCAA4C;AAO5C,MAAe,eAAe;IAEhB,MAAM,CAAU;IAEhB,SAAS,GAAY,MAAM,CAAC,eAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAEnD,YAAY,GAAG;QACrB,IAAI,EAAO,eAAM,CAAC,IAAI;QACtB,IAAI,EAAO,MAAM,CAAC,eAAM,CAAC,IAAI,CAAC;QAC9B,QAAQ,EAAG,MAAM,CAAC,eAAM,CAAC,QAAQ,CAAC;QAClC,QAAQ,EAAG,MAAM,CAAC,eAAM,CAAC,QAAQ,CAAC;QAClC,QAAQ,EAAG,eAAM,CAAC,QAAQ;KAC7B,CAAA;IAES,OAAO,GAAI,MAAM,CAAC,eAAM,CAAC,MAAM,IAAI,OAAO,CAAY,CAAC;IAEvD,QAAQ,GAAa,OAAO,CAAC,eAAM,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;IAEtD,UAAU,CAGlB;IAEQ,MAAM,CAAgB;IAEtB,KAAK,GAMX;QACA,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE,GAAE,CAAC;QAC1B,GAAG,EAAE,CAAC,IAAU,EAAE,EAAE,GAAE,CAAC;QACvB,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC;QACb,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;QACtB,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;KACxB,CAAA;CAwFJ;AAES,0CAAe;AACzB,kBAAe,eAAe,CAAA"}
@@ -338,45 +338,78 @@ declare class Blueprint<T = any> {
338
338
  * @static
339
339
  * @return {Blueprint<T>} Blueprint
340
340
  */
341
- static date(): Blueprint<Date | string>;
341
+ static date(): Blueprint<T.DateTime>;
342
342
  /**
343
343
  * Assign type 'DATE' in table
344
344
  * @return {Blueprint<T>} Blueprint
345
345
  */
346
- date(): Blueprint<Date | string>;
346
+ date(): Blueprint<T.DateTime>;
347
347
  /**
348
348
  * Assign type 'DATETIME' in table
349
349
  * @static
350
350
  * @return {Blueprint<T>} Blueprint
351
351
  */
352
- static dateTime(): Blueprint<Date | string>;
352
+ static dateTime(): Blueprint<T.DateTime>;
353
353
  /**
354
354
  * Assign type 'DATETIME' in table
355
355
  * @return {Blueprint<T>} Blueprint
356
356
  */
357
- dateTime(): Blueprint<Date | string>;
357
+ dateTime(): Blueprint<T.DateTime>;
358
358
  /**
359
359
  * Assign type 'DATETIME' in table
360
360
  * @static
361
361
  * @return {Blueprint<T>} Blueprint
362
362
  */
363
- static datetime(): Blueprint<Date | string>;
363
+ static datetime(): Blueprint<T.DateTime>;
364
364
  /**
365
365
  * Assign type 'DATETIME' in table
366
366
  * @return {Blueprint<T>} Blueprint
367
367
  */
368
- datetime(): Blueprint<Date | string>;
368
+ datetime(): Blueprint<T.DateTime>;
369
369
  /**
370
370
  * Assign type 'TIMESTAMP' in table
371
371
  * @static
372
372
  * @return {Blueprint<T>} Blueprint
373
373
  */
374
- static timestamp(): Blueprint<Date | string>;
374
+ static timestamp(): Blueprint<T.DateTime>;
375
375
  /**
376
376
  * Assign type 'TIMESTAMP' in table
377
377
  * @return {Blueprint<T>} Blueprint
378
378
  */
379
- timestamp(): Blueprint<Date | string>;
379
+ timestamp(): Blueprint<T.DateTime>;
380
+ /**
381
+ * Assign 'raw' in table
382
+ * @static
383
+ * @param {object} opts
384
+ * @property {string} opts.select
385
+ * @property {string | undefined} opts.where
386
+ * @return {Blueprint<T>} Blueprint
387
+ * @example
388
+ * const schema = {
389
+ * raw : Blueprint.raw({ type : 'DECIMAL(10, 2)' , attribute : 'DEFAULT(1)'}),
390
+ * enums : Blueprint.raw({ type : `ENUM('pending', 'active', 'banned')` , attribute : `DEFAULT 'pending'`}),
391
+ * }
392
+ */
393
+ static raw(opts: {
394
+ type: string;
395
+ attribute?: string;
396
+ }): Blueprint<string>;
397
+ /**
398
+ * Assign 'raw' in table
399
+ * @param {object} opts
400
+ * @property {string} opts.select
401
+ * @property {string | undefined} opts.where
402
+ * @return {Blueprint<T>} Blueprint
403
+ * * @example
404
+ * const schema = {
405
+ * raw : Blueprint.raw({ type : 'DECIMAL(10, 2)' , attribute : 'DEFAULT(1)'}),
406
+ * enums : Blueprint.raw({ type : `ENUM('pending', 'active', 'banned')` , attribute : `DEFAULT 'pending'`}),
407
+ * }
408
+ */
409
+ raw(opts: {
410
+ type: string;
411
+ attribute?: string;
412
+ }): Blueprint<string>;
380
413
  /**
381
414
  * Assign attributes 'UNSIGNED' in table
382
415
  * @return {Blueprint<T>} Blueprint
@@ -412,7 +445,7 @@ declare class Blueprint<T = any> {
412
445
  * @param {string | number} value default value
413
446
  * @return {Blueprint<T>} Blueprint
414
447
  */
415
- default<I extends T>(value: I): Blueprint<string extends T ? T.Default<string> : boolean extends T ? T.Default<boolean> : number extends T ? T.Default<number> : `${T & string}` | null>;
448
+ default<I extends T>(value: I): Blueprint<T.Default<T>>;
416
449
  /**
417
450
  * Assign attributes 'default currentTimestamp' in table
418
451
  * @return {Blueprint<T>} Blueprint
@@ -482,7 +515,7 @@ declare class Blueprint<T = any> {
482
515
  columns: string[];
483
516
  name?: string;
484
517
  } | null;
485
- get defaultValue(): string | number | null;
518
+ get defaultValue(): string | number | boolean | null;
486
519
  get valueType(): ExtendType;
487
520
  get enums(): string[];
488
521
  get isVirtual(): boolean;
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Blueprint = void 0;
4
+ const DB_1 = require("./DB");
4
5
  /**
5
6
  * Class 'Blueprint' is used to make the schema for table
6
7
  * @example
@@ -566,6 +567,43 @@ class Blueprint {
566
567
  instance._valueType = Date;
567
568
  return instance;
568
569
  }
570
+ /**
571
+ * Assign 'raw' in table
572
+ * @static
573
+ * @param {object} opts
574
+ * @property {string} opts.select
575
+ * @property {string | undefined} opts.where
576
+ * @return {Blueprint<T>} Blueprint
577
+ * @example
578
+ * const schema = {
579
+ * raw : Blueprint.raw({ type : 'DECIMAL(10, 2)' , attribute : 'DEFAULT(1)'}),
580
+ * enums : Blueprint.raw({ type : `ENUM('pending', 'active', 'banned')` , attribute : `DEFAULT 'pending'`}),
581
+ * }
582
+ */
583
+ static raw(opts) {
584
+ return new Blueprint().raw(opts);
585
+ }
586
+ /**
587
+ * Assign 'raw' in table
588
+ * @param {object} opts
589
+ * @property {string} opts.select
590
+ * @property {string | undefined} opts.where
591
+ * @return {Blueprint<T>} Blueprint
592
+ * * @example
593
+ * const schema = {
594
+ * raw : Blueprint.raw({ type : 'DECIMAL(10, 2)' , attribute : 'DEFAULT(1)'}),
595
+ * enums : Blueprint.raw({ type : `ENUM('pending', 'active', 'banned')` , attribute : `DEFAULT 'pending'`}),
596
+ * }
597
+ */
598
+ raw(opts) {
599
+ const instance = new Blueprint();
600
+ instance._addAssignType(opts.type);
601
+ if (opts.attribute) {
602
+ instance._addAssignAttribute(opts.attribute);
603
+ }
604
+ instance._valueType = String;
605
+ return instance;
606
+ }
569
607
  //---------------------------- attributes ------------------------------------//
570
608
  /**
571
609
  * Assign attributes 'UNSIGNED' in table
@@ -624,8 +662,11 @@ class Blueprint {
624
662
  */
625
663
  default(value) {
626
664
  if (typeof value === 'boolean') {
627
- this._addAssignAttribute(`DEFAULT ${value ? 1 : 0}`);
628
- this._default = value ? 1 : 0;
665
+ const defaultValue = DB_1.DB.driver() === 'pg'
666
+ ? value
667
+ : value ? 1 : 0;
668
+ this._addAssignAttribute(`DEFAULT ${defaultValue}`);
669
+ this._default = defaultValue;
629
670
  return this;
630
671
  }
631
672
  if (typeof value === 'number') {
@@ -1 +1 @@
1
- {"version":3,"file":"Blueprint.js","sourceRoot":"","sources":["../../../src/lib/core/Blueprint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Blueprint.js","sourceRoot":"","sources":["../../../src/lib/core/Blueprint.ts"],"names":[],"mappings":"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"}
@@ -1679,15 +1679,15 @@ declare class Builder<TA extends TAction = null> extends AbstractBuilder {
1679
1679
  */
1680
1680
  findMany(cb?: Function): Promise<any[]>;
1681
1681
  /**
1682
- *
1683
- * The 'toJSON' method is used to execute a database query and retrieve the result set that matches the query conditions.
1682
+ * The 'toAsyncIterable' method is used to execute a database query and return the result set as an asynchronous iterable.
1684
1683
  *
1685
1684
  * It retrieves multiple records from a database table based on the criteria specified in the query.
1685
+ * The optional callback function can be used to modify the generated SQL query before execution.
1686
1686
  *
1687
- * It returns a JSON formatted
1688
- * @returns {promise<string>}
1687
+ * @param {Function?} cb callback function return query sql
1688
+ * @returns {AsyncIterable<any>}
1689
1689
  */
1690
- toJSON(): Promise<string>;
1690
+ toAsyncIterable(cb?: Function): AsyncIterable<any>;
1691
1691
  /**
1692
1692
  * The 'toArray' method is used to execute a database query and retrieve the result set that matches the query conditions.
1693
1693
  *
@@ -3127,18 +3127,20 @@ class Builder extends AbstractBuilder_1.AbstractBuilder {
3127
3127
  * @returns {promise<any[]>}
3128
3128
  */
3129
3129
  async get(cb) {
3130
- if (this.$state.get("EXCEPTS")?.length)
3130
+ if (this.$state.get("VOID"))
3131
+ return [];
3132
+ if (this.$state.get("EXCEPTS")?.length) {
3131
3133
  this.select(...(await this.exceptColumns()));
3134
+ }
3132
3135
  let sql = this._queryBuilder().select();
3133
3136
  if (cb) {
3134
3137
  const callbackSql = cb(sql);
3135
- if (callbackSql == null || callbackSql === "")
3138
+ if (callbackSql == null || callbackSql === "") {
3136
3139
  throw new Error("Please provide a callback for execution");
3140
+ }
3137
3141
  sql = callbackSql;
3138
3142
  }
3139
3143
  const result = await this._queryStatement(sql);
3140
- if (this.$state.get("VOID"))
3141
- return [];
3142
3144
  await this.$utils.hookHandle(this.$state.get("HOOKS"), result || []);
3143
3145
  return this._resultHandler(result || []);
3144
3146
  }
@@ -3153,18 +3155,19 @@ class Builder extends AbstractBuilder_1.AbstractBuilder {
3153
3155
  return await this.get(cb);
3154
3156
  }
3155
3157
  /**
3156
- *
3157
- * The 'toJSON' method is used to execute a database query and retrieve the result set that matches the query conditions.
3158
+ * The 'toAsyncIterable' method is used to execute a database query and return the result set as an asynchronous iterable.
3158
3159
  *
3159
3160
  * It retrieves multiple records from a database table based on the criteria specified in the query.
3161
+ * The optional callback function can be used to modify the generated SQL query before execution.
3160
3162
  *
3161
- * It returns a JSON formatted
3162
- * @returns {promise<string>}
3163
+ * @param {Function?} cb callback function return query sql
3164
+ * @returns {AsyncIterable<any>}
3163
3165
  */
3164
- async toJSON() {
3165
- const sql = this._queryBuilder().select();
3166
- const result = await this._queryStatement(sql);
3167
- return this._resultHandler(JSON.stringify(result));
3166
+ async *toAsyncIterable(cb) {
3167
+ if (this.$state.get("VOID"))
3168
+ return yield* [];
3169
+ const results = await this.get(cb);
3170
+ return yield* results;
3168
3171
  }
3169
3172
  /**
3170
3173
  * The 'toArray' method is used to execute a database query and retrieve the result set that matches the query conditions.