tspace-mysql 1.9.3 → 1.9.4-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 (67) hide show
  1. package/README.md +139 -21
  2. package/dist/lib/constants/index.d.ts +1 -1
  3. package/dist/lib/constants/index.js +8 -1
  4. package/dist/lib/constants/index.js.map +1 -1
  5. package/dist/lib/core/Abstracts/AbstractBuilder.d.ts +1 -1
  6. package/dist/lib/core/Abstracts/AbstractBuilder.js +1 -0
  7. package/dist/lib/core/Abstracts/AbstractBuilder.js.map +1 -1
  8. package/dist/lib/core/Blueprint.d.ts +45 -12
  9. package/dist/lib/core/Blueprint.js +43 -2
  10. package/dist/lib/core/Blueprint.js.map +1 -1
  11. package/dist/lib/core/Builder.d.ts +6 -6
  12. package/dist/lib/core/Builder.js +29 -35
  13. package/dist/lib/core/Builder.js.map +1 -1
  14. package/dist/lib/core/Contracts/Audit.d.ts +2 -2
  15. package/dist/lib/core/Contracts/Logger.d.ts +2 -2
  16. package/dist/lib/core/DB.d.ts +137 -6
  17. package/dist/lib/core/DB.js +153 -30
  18. package/dist/lib/core/DB.js.map +1 -1
  19. package/dist/lib/core/Driver/index.d.ts +2 -1
  20. package/dist/lib/core/Driver/index.js +11 -0
  21. package/dist/lib/core/Driver/index.js.map +1 -1
  22. package/dist/lib/core/Driver/mariadb/MariadbDriver.d.ts +4 -1
  23. package/dist/lib/core/Driver/mariadb/MariadbDriver.js +21 -7
  24. package/dist/lib/core/Driver/mariadb/MariadbDriver.js.map +1 -1
  25. package/dist/lib/core/Driver/mongodb/MongodbDriver.d.ts +4 -1
  26. package/dist/lib/core/Driver/mongodb/MongodbDriver.js +8 -6
  27. package/dist/lib/core/Driver/mongodb/MongodbDriver.js.map +1 -1
  28. package/dist/lib/core/Driver/mysql/MysqlDriver.d.ts +4 -1
  29. package/dist/lib/core/Driver/mysql/MysqlDriver.js +35 -7
  30. package/dist/lib/core/Driver/mysql/MysqlDriver.js.map +1 -1
  31. package/dist/lib/core/Driver/postgres/PostgresDriver.d.ts +4 -1
  32. package/dist/lib/core/Driver/postgres/PostgresDriver.js +24 -8
  33. package/dist/lib/core/Driver/postgres/PostgresDriver.js.map +1 -1
  34. package/dist/lib/core/Driver/sqlite/SqliteDriver.d.ts +4 -1
  35. package/dist/lib/core/Driver/sqlite/SqliteDriver.js +14 -6
  36. package/dist/lib/core/Driver/sqlite/SqliteDriver.js.map +1 -1
  37. package/dist/lib/core/Model.d.ts +332 -29
  38. package/dist/lib/core/Model.js +329 -19
  39. package/dist/lib/core/Model.js.map +1 -1
  40. package/dist/lib/core/Pool.d.ts +1 -1
  41. package/dist/lib/core/Pool.js +10 -4
  42. package/dist/lib/core/Pool.js.map +1 -1
  43. package/dist/lib/core/{Queue.d.ts → Queue/index.d.ts} +115 -111
  44. package/dist/lib/core/Queue/index.js +283 -0
  45. package/dist/lib/core/Queue/index.js.map +1 -0
  46. package/dist/lib/core/Queue/types.d.ts +40 -0
  47. package/dist/lib/core/Queue/types.js +3 -0
  48. package/dist/lib/core/Queue/types.js.map +1 -0
  49. package/dist/lib/core/Queue/worker.d.ts +103 -0
  50. package/dist/lib/core/{Queue.js → Queue/worker.js} +261 -311
  51. package/dist/lib/core/Queue/worker.js.map +1 -0
  52. package/dist/lib/core/Repository.d.ts +40 -20
  53. package/dist/lib/core/Repository.js +35 -14
  54. package/dist/lib/core/Repository.js.map +1 -1
  55. package/dist/lib/core/Schema.d.ts +4 -4
  56. package/dist/lib/core/Schema.js +40 -14
  57. package/dist/lib/core/Schema.js.map +1 -1
  58. package/dist/lib/core/UtilityTypes.d.ts +7 -3
  59. package/dist/lib/core/UtilityTypes.js.map +1 -1
  60. package/dist/lib/types/decorator/index.d.ts +3 -0
  61. package/dist/lib/types/index.d.ts +19 -18
  62. package/dist/lib/types/repository/index.d.ts +3 -3
  63. package/dist/lib/utils/index.d.ts +10 -5
  64. package/dist/lib/utils/index.js +42 -9
  65. package/dist/lib/utils/index.js.map +1 -1
  66. package/package.json +3 -5
  67. package/dist/lib/core/Queue.js.map +0 -1
package/README.md CHANGED
@@ -95,7 +95,8 @@ npm install -D typescript@5.9.3
95
95
  - [Query Builder](#query-builder)
96
96
  - [Table Name & Alias Name](#table-name--alias-name)
97
97
  - [Returning Results](#returning-results)
98
- - [Query Statement](#query-statements)
98
+ - [Query Statements](#query-statements)
99
+ - [Stream Statements](#stream-statements)
99
100
  - [Select Statements](#select-statements)
100
101
  - [Raw Expressions](#raw-expressions)
101
102
  - [Ordering, Grouping, Limit and Offset](#ordering-grouping-limit-and-offset)
@@ -190,6 +191,8 @@ npm install -D typescript@5.9.3
190
191
  - [Repository Transactions](#repository-transactions)
191
192
  - [Repository Relations](#repository-relations)
192
193
  - [Queue](#queue)
194
+ - [Queue Events](#queue-events)
195
+ - [Queue Type-safe Events and Jobs](#queue-type-safe-events-and-jobs)
193
196
  - [View](#view)
194
197
  - [Stored Procedure](#stored-procedure)
195
198
  - [Blueprint](#blueprint)
@@ -530,6 +533,19 @@ const query = await DB.query(
530
533
  username : ['name1','name2']
531
534
  })
532
535
  // SELECT * FROM users WHERE id = '1' AND email IS NULL AND username in ('name1','name2');
536
+
537
+ const query = await DB.query(
538
+ "SELECT * FROM users WHERE id = ? AND email IS ? AND name IN ?",
539
+ [1,null,['name1','name2']]
540
+ )
541
+ // SELECT * FROM users WHERE id = '1' AND email IS NULL AND username in ('name1','name2');
542
+ ```
543
+
544
+ ## Stream Statements
545
+ ```js
546
+ for await (const user of DB.stream("SELECT * FROM users")) {
547
+ console.log(user);
548
+ }
533
549
  ```
534
550
 
535
551
  ## Select Statements
@@ -2988,22 +3004,27 @@ import { PostUser } from './PostUser'
2988
3004
 
2989
3005
  class UserObserve {
2990
3006
 
2991
- public selected(results) {
2992
- console.log({ results , selected : true })
2993
- }
3007
+ public selected(results) {
3008
+ console.log({ results , selected : true })
3009
+ }
2994
3010
 
2995
- public created(results) {
2996
- console.log({ results , created : true })
2997
- }
3011
+ public created(results) {
3012
+ console.log({ results , created : true })
3013
+ }
2998
3014
 
2999
- public updated(results) {
3000
- console.log({ results , updated : true })
3001
- }
3015
+ public updated(results) {
3016
+ console.log({ results , updated : true })
3017
+ }
3002
3018
 
3003
- public deleted(results) {
3004
- console.log({ results , deleted : true })
3005
- }
3019
+ public deleted(results) {
3020
+ console.log({ results , deleted : true })
3006
3021
  }
3022
+ }
3023
+
3024
+ enum UserRole {
3025
+ Admin = 'admin',
3026
+ User = 'user',
3027
+ }
3007
3028
 
3008
3029
  @Pattern('camelCase')
3009
3030
  @Observer(UserObserve)
@@ -3039,6 +3060,9 @@ class User extends Model {
3039
3060
  @Column(() => Blueprint.varchar(50).null())
3040
3061
  public password !: string
3041
3062
 
3063
+ @Column(() => Blueprint.enum(UserRole).default(UserRole.Admin))
3064
+ public role !: `${UserRole}`
3065
+
3042
3066
  @Column(() => Blueprint.timestamp().null())
3043
3067
  public createdAt!: Date
3044
3068
 
@@ -3266,10 +3290,11 @@ class Post extends Model {
3266
3290
  id: Blueprint.int().notNull().primary().autoIncrement(),
3267
3291
  uuid: Blueprint.varchar(50).null(),
3268
3292
  user_id: Blueprint.int().notNull().foreign({
3269
- references: "id",
3270
- on: User,
3271
- onDelete: "CASCADE",
3272
- onUpdate: "CASCADE",
3293
+ on: () => User, // or "users"
3294
+ // Optionals
3295
+ references: "id", // default "id"
3296
+ onDelete: "CASCADE", // default "CASCADE"
3297
+ onUpdate: "CASCADE", // default "CASCADE"
3273
3298
  }),
3274
3299
  title: Blueprint.varchar(255).null(),
3275
3300
  created_at: Blueprint.timestamp().null(),
@@ -4184,9 +4209,14 @@ const fakeSendEmail = async (job: Job) => {
4184
4209
 
4185
4210
  // start the Queue
4186
4211
  await Queue.start({
4187
- inspect : true,
4188
- flush : false, // flush = true -> remove all jobs
4189
- hostname: 'pod1'
4212
+ inspect : true, // @default false, enable queue workflow inspection
4213
+ flush : false, // @default false, true -> remove all jobs
4214
+ hostname : 'pod1', // @default null, worker hostname
4215
+ maxIdleRetries : 8, // @default 5, maximum retries when no jobs are available
4216
+ poll : {
4217
+ enabled : true, // @default false, enable periodic job checking
4218
+ interval : 10_000 // @default 60_000, polling interval
4219
+ };
4190
4220
  });
4191
4221
 
4192
4222
  const worker = 20;
@@ -4226,6 +4256,83 @@ for(let j = 1; j <= worker * 500; j++) {
4226
4256
  // if you want to end the Queue
4227
4257
  // await Queue.end()
4228
4258
 
4259
+ ```
4260
+ ### Queue Events
4261
+
4262
+ Queue also supports an event-based publish/subscribe pattern.
4263
+
4264
+ One event can have multiple subscribers.
4265
+ Use Queue.subscribe() to subscribe a job handler to an event
4266
+ ```js
4267
+ // user.created
4268
+ // │
4269
+ // ├── email
4270
+ // ├── notify
4271
+ // └── analytics
4272
+
4273
+ Queue.subscribe(
4274
+ 'user.created',
4275
+ 'email',
4276
+ async (job) => {
4277
+ await new Promise(r => setTimeout(r, 1000));
4278
+ console.log('Send e-mail : ' + job.payload.email)
4279
+ return 'Done!';
4280
+ },
4281
+ { concurrency: 2 }
4282
+ );
4283
+
4284
+ Queue.subscribe(
4285
+ 'user.created',
4286
+ 'notify',
4287
+ async (job) => {
4288
+ await new Promise(r => setTimeout(r, 1000));
4289
+ console.log('notify : ' + job.payload.email)
4290
+ return 'Done!';
4291
+ },
4292
+ { concurrency: 3 }
4293
+ );
4294
+ ```
4295
+ Use Queue.publish() to publish an event.
4296
+ ```js
4297
+ for (let i = 1; i <= 5; i++) {
4298
+ // will send to jobs ['email','notify'];
4299
+ Queue.publish(
4300
+ 'user.created',
4301
+ { id : i , email : `user${i}@gmail.com` },
4302
+ {
4303
+ priority: i
4304
+ }
4305
+ );
4306
+ }
4307
+
4308
+ ```
4309
+ ### Queue Type-safe Events and Jobs
4310
+ Queue optionally supports type-safe event and job names through `QueueContract`.
4311
+
4312
+ The feature is optional.
4313
+
4314
+ If the application does not define a contract, the Queue API can continue to accept normal string names.
4315
+
4316
+ Create a `types.d.ts` file in your application:
4317
+ ```js
4318
+ import { QueueContract } from 'tspace-mysql';
4319
+
4320
+ declare module 'tspace-mysql' {
4321
+ interface QueueContract {
4322
+ events: {
4323
+ 'user.created': [
4324
+ 'email',
4325
+ 'notify',
4326
+ ];
4327
+ };
4328
+
4329
+ jobs: [
4330
+ 'resize-video',
4331
+ 'cleanup',
4332
+ ];
4333
+ }
4334
+ }
4335
+
4229
4336
  ```
4230
4337
 
4231
4338
  ## View
@@ -4415,7 +4522,13 @@ Blueprint is a tool used for defining database schemas programmatically.
4415
4522
  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:
4416
4523
 
4417
4524
  ```js
4418
- import { Schema , Blueprint , DB } from 'tspace-mysql'
4525
+ import { Schema , Blueprint , DB } from 'tspace-mysql';
4526
+
4527
+ enum UserRole {
4528
+ Admin = 'admin',
4529
+ User = 'user',
4530
+ }
4531
+
4419
4532
  (async () => {
4420
4533
  await new Schema().table('users', {
4421
4534
  id : Blueprint.int().notNull().primary().autoIncrement(),
@@ -4426,6 +4539,7 @@ import { Schema , Blueprint , DB } from 'tspace-mysql'
4426
4539
  email_verify : Blueprint.tinyInt(),
4427
4540
  password : Blueprint.varchar(255),
4428
4541
  json : Blueprint.json(),
4542
+ role : Blueprint.enum(UserRole).default(UserRole.Admin)
4429
4543
  created_at : Blueprint.null().timestamp(),
4430
4544
  updated_at : Blueprint.null().timestamp(),
4431
4545
  deleted_at : Blueprint.null().timestamp()
@@ -4458,6 +4572,10 @@ enum(...n)
4458
4572
  date()
4459
4573
  dateTime()
4460
4574
  timestamp ()
4575
+ raw({
4576
+ type : 'DECIMAL(10, 2)',
4577
+ attribute : 'DEFAULT(1)'
4578
+ })
4461
4579
 
4462
4580
  /**
4463
4581
  * To add attributes of the schema to the database
@@ -46,7 +46,7 @@ declare const CONSTANTS: Readonly<{
46
46
  NOT: "NOT";
47
47
  DUPLICATE: "DUPLICATE";
48
48
  KEY: "KEY";
49
- RAW: "$RAW:";
49
+ RAW: `$RAW(${string}):`;
50
50
  OP: "$OP:";
51
51
  FREEZE: "$FREEZE:";
52
52
  VALUE: "$VALUE:";
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CONSTANTS = void 0;
4
+ const random = () => {
5
+ return [
6
+ Date.now(),
7
+ Math.random().toString(36).slice(2, 10).padEnd(8, '0'),
8
+ Math.floor(Math.random() * 10_000_000)
9
+ ].join('-');
10
+ };
4
11
  const CONSTANTS = Object.freeze({
5
12
  SHOW: 'SHOW',
6
13
  DESCRIBE: 'DESCRIBE',
@@ -49,7 +56,7 @@ const CONSTANTS = Object.freeze({
49
56
  NOT: 'NOT',
50
57
  DUPLICATE: 'DUPLICATE',
51
58
  KEY: 'KEY',
52
- RAW: '$RAW:',
59
+ RAW: `$RAW(${random()}):`,
53
60
  OP: '$OP:',
54
61
  FREEZE: '$FREEZE:',
55
62
  VALUE: '$VALUE:',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/constants/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/constants/index.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ declare abstract class AbstractBuilder {
26
26
  get: Function;
27
27
  queryBuilder: Function;
28
28
  transaction: Function;
29
+ stream: Function;
29
30
  };
30
31
  abstract void(): this;
31
32
  abstract debug(): this;
@@ -126,7 +127,6 @@ declare abstract class AbstractBuilder {
126
127
  abstract getGroupBy(column: string): Promise<Map<string | number, any[]>>;
127
128
  abstract findGroupBy(column: string): Promise<Map<string | number, any[]>>;
128
129
  abstract toArray(column: string): Promise<any[]>;
129
- abstract toJSON(): Promise<string>;
130
130
  abstract toSQL(): string;
131
131
  abstract toString(): string;
132
132
  abstract count(column: string): Promise<number>;
@@ -22,6 +22,7 @@ class AbstractBuilder {
22
22
  get: () => { },
23
23
  queryBuilder: () => { },
24
24
  transaction: () => { },
25
+ stream: (sql) => { },
25
26
  };
26
27
  }
27
28
  exports.AbstractBuilder = AbstractBuilder;
@@ -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,GAOX;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;QACrB,MAAM,EAAE,CAAC,GAAW,EAAE,EAAE,GAAE,CAAC;KAC9B,CAAA;CAwFJ;AAES,0CAAe;AACzB,kBAAe,eAAe,CAAA"}
@@ -1,4 +1,4 @@
1
- import { type T } from "./UtilityTypes";
1
+ import type { T } from "./UtilityTypes";
2
2
  import { Model } from "./Model";
3
3
  type ExtendType = NumberConstructor | StringConstructor | BooleanConstructor | DateConstructor | readonly ExtendType[] | {
4
4
  [_: string]: ExtendType;
@@ -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
@@ -445,7 +478,7 @@ declare class Blueprint<T = any> {
445
478
  */
446
479
  foreign({ references, on, onDelete, onUpdate, }: {
447
480
  references?: string;
448
- on: (new () => Model) | string;
481
+ on: (() => new () => Model) | string;
449
482
  onDelete?: "CASCADE" | "NO ACTION" | "RESTRICT" | "SET NULL";
450
483
  onUpdate?: "CASCADE" | "NO ACTION" | "RESTRICT" | "SET NULL";
451
484
  }): Blueprint<T>;
@@ -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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"}
@@ -1494,7 +1494,7 @@ declare class Builder<TA extends TAction = null> extends AbstractBuilder {
1494
1494
  * @param {Function} func function for callback result
1495
1495
  * @returns {this}
1496
1496
  */
1497
- hook(func: Function): this;
1497
+ hook(func: (results: any) => void): this;
1498
1498
  /**
1499
1499
  * The 'before' method is used function when execute returns a result to callback function
1500
1500
  * @param {Function} func function for callback result
@@ -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
  *