@shohaghinfo/aerojs 0.3.0 → 0.4.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 (112) hide show
  1. package/AGENTS.md +226 -0
  2. package/README.md +149 -9
  3. package/dist/audit/audit-trail.d.ts +5 -6
  4. package/dist/audit/audit-trail.d.ts.map +1 -1
  5. package/dist/audit/audit-trail.js +5 -6
  6. package/dist/audit/audit-trail.js.map +1 -1
  7. package/dist/auth/auth-manager.d.ts +5 -5
  8. package/dist/auth/auth-manager.js +5 -5
  9. package/dist/auth/bouncer.d.ts +8 -15
  10. package/dist/auth/bouncer.d.ts.map +1 -1
  11. package/dist/auth/bouncer.js +10 -17
  12. package/dist/auth/bouncer.js.map +1 -1
  13. package/dist/auth/guards/api-token-guard.d.ts +2 -4
  14. package/dist/auth/guards/api-token-guard.d.ts.map +1 -1
  15. package/dist/auth/guards/api-token-guard.js +2 -4
  16. package/dist/auth/guards/api-token-guard.js.map +1 -1
  17. package/dist/auth/guards/jwt-guard.d.ts +3 -4
  18. package/dist/auth/guards/jwt-guard.d.ts.map +1 -1
  19. package/dist/auth/guards/jwt-guard.js +2 -3
  20. package/dist/auth/guards/jwt-guard.js.map +1 -1
  21. package/dist/auth/guards/session-guard.d.ts +2 -4
  22. package/dist/auth/guards/session-guard.d.ts.map +1 -1
  23. package/dist/auth/guards/session-guard.js +2 -4
  24. package/dist/auth/guards/session-guard.js.map +1 -1
  25. package/dist/auth/policy.js +1 -1
  26. package/dist/auth/policy.js.map +1 -1
  27. package/dist/cli/commands/make.js +1 -1
  28. package/dist/cli/runner.js +1 -1
  29. package/dist/core/application.d.ts +10 -0
  30. package/dist/core/application.d.ts.map +1 -1
  31. package/dist/core/application.js +13 -0
  32. package/dist/core/application.js.map +1 -1
  33. package/dist/core/context.d.ts +1 -0
  34. package/dist/core/context.d.ts.map +1 -1
  35. package/dist/core/context.js +3 -0
  36. package/dist/core/context.js.map +1 -1
  37. package/dist/database/connection.d.ts +32 -0
  38. package/dist/database/connection.d.ts.map +1 -1
  39. package/dist/database/connection.js +51 -0
  40. package/dist/database/connection.js.map +1 -1
  41. package/dist/database/index.d.ts +1 -1
  42. package/dist/database/index.d.ts.map +1 -1
  43. package/dist/database/index.js +1 -1
  44. package/dist/database/index.js.map +1 -1
  45. package/dist/database/model-hooks.d.ts +5 -5
  46. package/dist/database/model-hooks.js +11 -11
  47. package/dist/database/model.d.ts +58 -58
  48. package/dist/database/model.d.ts.map +1 -1
  49. package/dist/database/model.js +133 -71
  50. package/dist/database/model.js.map +1 -1
  51. package/dist/database/query-builder.d.ts +24 -7
  52. package/dist/database/query-builder.d.ts.map +1 -1
  53. package/dist/database/query-builder.js +88 -37
  54. package/dist/database/query-builder.js.map +1 -1
  55. package/dist/events/event-bus.d.ts +47 -75
  56. package/dist/events/event-bus.d.ts.map +1 -1
  57. package/dist/events/event-bus.js +14 -23
  58. package/dist/events/event-bus.js.map +1 -1
  59. package/dist/index.d.ts +3 -3
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +6 -6
  62. package/dist/index.js.map +1 -1
  63. package/dist/notifications/notification-manager.d.ts +1 -1
  64. package/dist/notifications/notification-manager.js +1 -1
  65. package/dist/queue/dashboard.d.ts +30 -0
  66. package/dist/queue/dashboard.d.ts.map +1 -0
  67. package/dist/queue/dashboard.js +371 -0
  68. package/dist/queue/dashboard.js.map +1 -0
  69. package/dist/queue/index.d.ts +1 -0
  70. package/dist/queue/index.d.ts.map +1 -1
  71. package/dist/queue/index.js +1 -0
  72. package/dist/queue/index.js.map +1 -1
  73. package/dist/queue/queue-manager.d.ts +31 -1
  74. package/dist/queue/queue-manager.d.ts.map +1 -1
  75. package/dist/queue/queue-manager.js +60 -0
  76. package/dist/queue/queue-manager.js.map +1 -1
  77. package/dist/queue/worker.d.ts +3 -0
  78. package/dist/queue/worker.d.ts.map +1 -1
  79. package/dist/queue/worker.js +9 -0
  80. package/dist/queue/worker.js.map +1 -1
  81. package/dist/scheduler/scheduler.d.ts +5 -5
  82. package/dist/scheduler/scheduler.js +5 -5
  83. package/dist/security/encryption.d.ts +60 -0
  84. package/dist/security/encryption.d.ts.map +1 -0
  85. package/dist/security/encryption.js +120 -0
  86. package/dist/security/encryption.js.map +1 -0
  87. package/dist/security/fingerprint.d.ts +47 -0
  88. package/dist/security/fingerprint.d.ts.map +1 -0
  89. package/dist/security/fingerprint.js +83 -0
  90. package/dist/security/fingerprint.js.map +1 -0
  91. package/dist/security/index.d.ts +2 -0
  92. package/dist/security/index.d.ts.map +1 -1
  93. package/dist/security/index.js +2 -0
  94. package/dist/security/index.js.map +1 -1
  95. package/dist/session/cookie-session-driver.d.ts +34 -0
  96. package/dist/session/cookie-session-driver.d.ts.map +1 -0
  97. package/dist/session/cookie-session-driver.js +57 -0
  98. package/dist/session/cookie-session-driver.js.map +1 -0
  99. package/dist/session/index.d.ts +8 -0
  100. package/dist/session/index.d.ts.map +1 -0
  101. package/dist/session/index.js +8 -0
  102. package/dist/session/index.js.map +1 -0
  103. package/dist/session/session-driver.d.ts +2 -2
  104. package/dist/session/session-driver.js +2 -2
  105. package/dist/session/session-manager.d.ts +4 -4
  106. package/dist/session/session-manager.d.ts.map +1 -1
  107. package/dist/session/session-manager.js +10 -5
  108. package/dist/session/session-manager.js.map +1 -1
  109. package/dist/tcp/mllp.d.ts +1 -1
  110. package/dist/tcp/mllp.js +2 -2
  111. package/dist/tcp/mllp.js.map +1 -1
  112. package/package.json +1 -1
@@ -161,6 +161,57 @@ export class Database {
161
161
  static tableDefaults = new Map();
162
162
  static defaultAdapter = new MemoryDatabaseAdapter();
163
163
  static adapters = new Map();
164
+ static replicationConfig;
165
+ static replicaRoundRobinIndex = 0;
166
+ /**
167
+ * Configures primary write and read replica routing.
168
+ *
169
+ * @example
170
+ * Database.configureReplication({
171
+ * write: 'primary_master',
172
+ * read: ['replica_1', 'replica_2'],
173
+ * });
174
+ */
175
+ static configureReplication(config) {
176
+ this.replicationConfig = config;
177
+ this.replicaRoundRobinIndex = 0;
178
+ }
179
+ /**
180
+ * Checks whether database read replication is currently configured.
181
+ */
182
+ static hasReplication() {
183
+ return !!this.replicationConfig && this.replicationConfig.read.length > 0;
184
+ }
185
+ /**
186
+ * Returns the primary write database adapter.
187
+ */
188
+ static getWriteAdapter() {
189
+ if (this.replicationConfig) {
190
+ return typeof this.replicationConfig.write === 'string'
191
+ ? this.getAdapter(this.replicationConfig.write)
192
+ : this.replicationConfig.write;
193
+ }
194
+ return this.defaultAdapter;
195
+ }
196
+ /**
197
+ * Returns a read replica database adapter, automatically balanced round-robin across replicas.
198
+ */
199
+ static getReadAdapter() {
200
+ if (this.replicationConfig && this.replicationConfig.read.length > 0) {
201
+ const replicas = this.replicationConfig.read;
202
+ const target = replicas[this.replicaRoundRobinIndex % replicas.length];
203
+ this.replicaRoundRobinIndex++;
204
+ return typeof target === 'string' ? this.getAdapter(target) : target;
205
+ }
206
+ return this.getWriteAdapter();
207
+ }
208
+ /**
209
+ * Resets replication configuration.
210
+ */
211
+ static resetReplication() {
212
+ this.replicationConfig = undefined;
213
+ this.replicaRoundRobinIndex = 0;
214
+ }
164
215
  static setAdapter(adapter, name = 'default') {
165
216
  this.adapters.set(name, adapter);
166
217
  if (name === 'default') {
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/database/connection.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAgBlD;;;GAGG;AACH,MAAM,OAAO,qBAAqB;IAChB,OAAO,GAAG,QAAQ,CAAC;IAC3B,MAAM,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC1C,cAAc,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,UAAU,GAAG,IAAI,GAAG,EAAuF,CAAC;IAE7G,KAAK,CAAC,SAAS,CAAC,IAAY;QACjC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;QACtD,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9C,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAiB,IAAI,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;IAClF,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,IAAY;QAClC,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,EAAE,EAAE,CAAC;YACP,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,MAAM,CAAC;YACxB,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC,cAAc,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IAGM,YAAY,CAAC,KAAa;QAC/B,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,GAAG,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAsC,IAAY;QAC5D,OAAO,IAAI,YAAY,CAAI,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAEM,KAAK,CAAC,KAAK,CAAkB,GAAW,EAAE,WAAsB,EAAE;QACvE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,6DAA6D;YAC7D,MAAM,WAAW,GAAG,6DAA6D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5F,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;gBAClC,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAC1C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAmB,CAAC;YACvD,CAAC;YACD,OAAO,EAAS,CAAC;QACnB,CAAC;gBAAS,CAAC;YACT,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAO,CAClB,GAAW,EACX,WAAsB,EAAE;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,gDAAgD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC/E,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC7D,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;QAC7B,CAAC;gBAAS,CAAC;YACT,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,WAAW,CAAI,QAA8C;QACxE,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;QACtD,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAC9C,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAiB,IAAI,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC;YAC3B,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;YACjC,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,gBAAgB;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,KAAK,CAAC,MAAM,KAAmB,CAAC;IAEhC,KAAK,CAAC,QAAQ,KAAmB,CAAC;IAElC,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACpB,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACF;AAED;;GAEG;AAEH;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAwB,EAAE,KAAK,GAAG,CAAC;IACxE,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE;QACxB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,KAAK,4BAA4B;gBAAE,OAAO,IAAI,CAAC;YACvD,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC3B,OAAO,KAAK,WAAc,QAA8C;oBACtE,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,CAAC;oBAC/B,MAAM,aAAa,GAAG,WAAW,YAAY,EAAE,CAAC;oBAEhD,sEAAsE;oBACtE,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;wBACrB,IAAI,OAAQ,MAAc,CAAC,SAAS,KAAK,UAAU,EAAE,CAAC;4BACpD,MAAO,MAAc,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;wBACjD,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC;gCACH,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,aAAa,EAAE,CAAC,CAAC;4BACrD,CAAC;4BAAC,OAAO,CAAC,EAAE,CAAC,CAAC,8CAA8C,CAAC,CAAC;wBAChE,CAAC;wBAED,MAAM,aAAa,GAAG,sBAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;wBACnE,IAAI,CAAC;4BACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,CAAC;4BAC7C,kFAAkF;4BAClF,8DAA8D;4BAC9D,OAAO,MAAM,CAAC;wBAChB,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,IAAI,OAAQ,MAAc,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gCACrD,MAAO,MAAc,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;4BAClD,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC;oCACH,MAAM,MAAM,CAAC,OAAO,CAAC,yBAAyB,aAAa,EAAE,CAAC,CAAC;gCACjE,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;4BAC9B,CAAC;4BACD,MAAM,KAAK,CAAC;wBACd,CAAC;oBACH,CAAC;oBAED,+BAA+B;oBAC/B,OAAO,MAAM,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;wBAChD,MAAM,WAAW,GAAG,sBAAsB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;wBAClE,OAAO,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACrC,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC7C,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAU,aAAa,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC1E,MAAM,CAAC,cAAc,GAAoB,IAAI,qBAAqB,EAAE,CAAC;IACrE,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IAEtD,MAAM,CAAC,UAAU,CAAC,OAAwB,EAAE,IAAI,GAAG,SAAS;QACjE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACjC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAChC,CAAC;IACH,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,IAAI,GAAG,SAAS;QACvC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC;IACxD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CACjB,IAAY,EACZ,sBAAgD,SAAS;QAEzD,MAAM,OAAO,GAAG,OAAO,mBAAmB,KAAK,QAAQ;YACrD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;YACtC,CAAC,CAAC,mBAAmB,CAAC;QACxB,OAAO,IAAI,YAAY,CAAI,IAAI,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,KAAK,CACvB,GAAW,EACX,WAAsB,EAAE,EACxB,sBAAgD,SAAS;QAEzD,MAAM,OAAO,GAAG,OAAO,mBAAmB,KAAK,QAAQ;YACrD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;YACtC,CAAC,CAAC,mBAAmB,CAAC;QACxB,OAAO,OAAO,CAAC,KAAK,CAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CACzB,GAAW,EACX,WAAsB,EAAE,EACxB,sBAAgD,SAAS;QAEzD,MAAM,OAAO,GAAG,OAAO,mBAAmB,KAAK,QAAQ;YACrD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;YACtC,CAAC,CAAC,mBAAmB,CAAC;QACxB,OAAO,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,WAAW,CAC7B,QAA8C,EAC9C,sBAAgD,SAAS;QAEzD,MAAM,OAAO,GAAG,OAAO,mBAAmB,KAAK,QAAQ;YACrD,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC;YACtC,CAAC,CAAC,mBAAmB,CAAC;QAExB,wEAAwE;QACxE,IAAK,OAAe,CAAC,0BAA0B,EAAE,CAAC;YAChD,OAAO,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;QACD,OAAO,sBAAsB,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAE/D,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,cAAc,GAAG,SAAS;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,OAAO,OAAO,CAAC,gBAAgB,KAAK,UAAU,EAAE,CAAC;YACnD,OAAO,OAAO,CAAC,gBAAgB,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAqB;QAC9C,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YAC5C,MAAM,GAAG,CAAC,MAAM,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAqB;QAChD,IAAI,GAAG,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC9C,MAAM,GAAG,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC1B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,CAAC;QACD,MAAM,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;;AAGH,MAAM,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../../src/database/connection.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  export { Database, DB, MemoryDatabaseAdapter, type DatabaseAdapter, type DatabaseRow, } from './connection.js';
6
6
  export { QueryBuilder, type WhereClause, type JoinClause, type PaginationResult, } from './query-builder.js';
7
- export { Model, Relation, computed, type RelationDefinition, type ManyToManyOptions, type HasManyThroughOptions, } from './model.js';
7
+ export { Model, Relation, computed, encrypted, type RelationDefinition, type ManyToManyOptions, type HasManyThroughOptions, } from './model.js';
8
8
  export { getHookRegistry, registerHook, ModelHookRegistry, beforeCreate, afterCreate, beforeSave, afterSave, beforeUpdate, afterUpdate, beforeDelete, afterDelete, beforeFind, afterFind, beforeFetch, afterFetch, type ModelHookEvent, type ModelHookHandler, } from './model-hooks.js';
9
9
  export { Schema, TableBlueprint, type ColumnDefinition, } from './schema.js';
10
10
  export { Migrator, type Migration, } from './migrator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,QAAQ,EACR,EAAE,EACF,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,gBAAgB,GACtB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,QAAQ,EACR,KAAK,SAAS,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,MAAM,EACN,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,OAAO,GACR,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,SAAS,EACT,KAAK,wBAAwB,GAC9B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,UAAU,GACX,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,QAAQ,EACR,EAAE,EACF,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,EACZ,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,gBAAgB,GACtB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,GAC3B,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,gBAAgB,GACtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,MAAM,EACN,cAAc,EACd,KAAK,gBAAgB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,QAAQ,EACR,KAAK,SAAS,GACf,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,MAAM,EACN,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,GACvB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,OAAO,GACR,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,SAAS,EACT,KAAK,wBAAwB,GAC9B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,UAAU,GACX,MAAM,cAAc,CAAC"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  export { Database, DB, MemoryDatabaseAdapter, } from './connection.js';
6
6
  export { QueryBuilder, } from './query-builder.js';
7
- export { Model, Relation, computed, } from './model.js';
7
+ export { Model, Relation, computed, encrypted, } from './model.js';
8
8
  export { getHookRegistry, registerHook, ModelHookRegistry, beforeCreate, afterCreate, beforeSave, afterSave, beforeUpdate, afterUpdate, beforeDelete, afterDelete, beforeFind, afterFind, beforeFetch, afterFetch, } from './model-hooks.js';
9
9
  export { Schema, TableBlueprint, } from './schema.js';
10
10
  export { Migrator, } from './migrator.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,QAAQ,EACR,EAAE,EACF,qBAAqB,GAGtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,GAIb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,GAIT,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,GAGX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,MAAM,EACN,cAAc,GAEf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,QAAQ,GAET,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,MAAM,EACN,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,OAAO,GACR,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,SAAS,GAEV,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,UAAU,GACX,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/database/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,QAAQ,EACR,EAAE,EACF,qBAAqB,GAGtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,YAAY,GAIb,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,GAIV,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,UAAU,EACV,SAAS,EACT,WAAW,EACX,UAAU,GAGX,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,MAAM,EACN,cAAc,GAEf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,QAAQ,GAET,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,MAAM,EACN,cAAc,GACf,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,YAAY,GAEb,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,mBAAmB,EACnB,OAAO,GACR,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,SAAS,GAEV,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,UAAU,GACX,MAAM,cAAc,CAAC"}
@@ -4,11 +4,11 @@
4
4
  * @poppinss/hooks pattern. Supports multiple handlers per event, async execution,
5
5
  * decorator-based registration, and one-time hooks.
6
6
  *
7
- * Hospital use:
8
- * @beforeSave() → auto hash password before every save
9
- * @beforeCreate() → generate MRN (Medical Record Number)
10
- * @afterCreate() → send welcome SMS to new patient
11
- * @beforeDelete() → block hard-delete on financial records
7
+ * Typical use-cases:
8
+ * @beforeSave() → auto-hash password before saving
9
+ * @beforeCreate() → generate unique reference code or UUID
10
+ * @afterCreate() → dispatch UserRegistered domain event or send welcome notification
11
+ * @beforeDelete() → block deletion or enforce soft-delete policy
12
12
  * @afterUpdate() → write immutable audit trail
13
13
  */
14
14
  export type ModelHookEvent = 'beforeCreate' | 'afterCreate' | 'beforeSave' | 'afterSave' | 'beforeUpdate' | 'afterUpdate' | 'beforeDelete' | 'afterDelete' | 'beforeFind' | 'afterFind' | 'beforeFetch' | 'afterFetch';
@@ -4,11 +4,11 @@
4
4
  * @poppinss/hooks pattern. Supports multiple handlers per event, async execution,
5
5
  * decorator-based registration, and one-time hooks.
6
6
  *
7
- * Hospital use:
8
- * @beforeSave() → auto hash password before every save
9
- * @beforeCreate() → generate MRN (Medical Record Number)
10
- * @afterCreate() → send welcome SMS to new patient
11
- * @beforeDelete() → block hard-delete on financial records
7
+ * Typical use-cases:
8
+ * @beforeSave() → auto-hash password before saving
9
+ * @beforeCreate() → generate unique reference code or UUID
10
+ * @afterCreate() → dispatch UserRegistered domain event or send welcome notification
11
+ * @beforeDelete() → block deletion or enforce soft-delete policy
12
12
  * @afterUpdate() → write immutable audit trail
13
13
  */
14
14
  // ─── Hook Registry ────────────────────────────────────────────────────────────
@@ -69,22 +69,22 @@ export function getHookRegistry(ModelClass) {
69
69
  * as a lifecycle hook handler.
70
70
  *
71
71
  * @example
72
- * class Patient extends Model {
72
+ * class User extends Model {
73
73
  * @beforeCreate()
74
- * public static generateMrn(instance: Patient) {
75
- * instance.mrn = `AKMMCH-${Date.now()}`;
74
+ * public static generateUuid(instance: User) {
75
+ * instance.uuid = crypto.randomUUID();
76
76
  * }
77
77
  *
78
78
  * @beforeSave()
79
- * public static async hashPassword(instance: Patient) {
79
+ * public static async hashPassword(instance: User) {
80
80
  * if (instance.$dirty.password) {
81
81
  * instance.password = await hash(instance.password);
82
82
  * }
83
83
  * }
84
84
  *
85
85
  * @beforeDelete()
86
- * public static blockHardDelete(_instance: Patient) {
87
- * throw new Error('Hard delete not allowed. Use patient.void() instead.');
86
+ * public static enforceSoftDelete(_instance: User) {
87
+ * // Enforce soft-delete logic
88
88
  * }
89
89
  * }
90
90
  */
@@ -10,12 +10,12 @@
10
10
  * 🆕 NEW: $dirty tracking (know exactly what changed)
11
11
  * 🆕 NEW: $original + isDirty(field) helpers
12
12
  *
13
- * Hospital uses:
14
- * - Doctor ↔ Specialization (manyToMany via doctor_specializations)
15
- * - Hospital → Wards → Beds (hasManyThrough)
16
- * - Patient.query().active().opd().byBranch(1).paginate(1, 20)
17
- * - @beforeCreate() → generate MRN
18
- * - @beforeDelete() → block hard-delete on medical records
13
+ * Examples:
14
+ * - User ↔ Role (manyToMany via user_roles)
15
+ * - Country → Users → Posts (hasManyThrough)
16
+ * - User.query().active().verified().byRole('admin').paginate(1, 20)
17
+ * - @beforeCreate() → generate UUID or reference code
18
+ * - @beforeDelete() → enforce audit retention policy
19
19
  */
20
20
  import { type DatabaseAdapter } from './connection.js';
21
21
  export interface RelationDefinition {
@@ -71,13 +71,7 @@ export declare class Relation implements PromiseLike<any> {
71
71
  * Computed properties are derived from other attributes (not stored in DB).
72
72
  *
73
73
  * @example
74
- * class Patient extends Model {
75
- * @computed()
76
- * get age(): number {
77
- * const dob = new Date(this.date_of_birth);
78
- * return Math.floor((Date.now() - dob.getTime()) / (365.25 * 24 * 3600 * 1000));
79
- * }
80
- *
74
+ * class User extends Model {
81
75
  * @computed()
82
76
  * get fullName(): string {
83
77
  * return `${this.first_name} ${this.last_name}`;
@@ -85,11 +79,23 @@ export declare class Relation implements PromiseLike<any> {
85
79
  * }
86
80
  */
87
81
  export declare function computed(): PropertyDecorator;
82
+ /**
83
+ * Property decorator to mark a model attribute for transparent AES-256-GCM encryption in the database.
84
+ * The attribute is stored encrypted in the database, but read and manipulated as plaintext in application code.
85
+ *
86
+ * @example
87
+ * class AccountRecord extends Model {
88
+ * @encrypted()
89
+ * public ssn!: string;
90
+ * }
91
+ */
92
+ export declare function encrypted(): PropertyDecorator;
88
93
  export declare class Model {
89
94
  static table: string;
90
95
  static primaryKey: string;
91
96
  static hidden: string[];
92
97
  static fillable: string[];
98
+ static encrypted: string[];
93
99
  static tenanted: boolean;
94
100
  static tenantColumn: string;
95
101
  static softDeletes: boolean;
@@ -98,12 +104,16 @@ export declare class Model {
98
104
  updatedAt?: string;
99
105
  };
100
106
  static connection: string;
107
+ /**
108
+ * Hydrates a database row into a Model instance, transparently decrypting any @encrypted fields.
109
+ */
110
+ static hydrate<M extends Model = Model>(this: new (...args: any[]) => M, row: any): M;
101
111
  /**
102
112
  * Global query scopes automatically applied to every query.
103
113
  *
104
114
  * @example
105
- * class Patient extends Model {
106
- * public static override globalScopes = [BranchScope, ActiveScope];
115
+ * class User extends Model {
116
+ * public static override globalScopes = [TenantScope, ActiveScope];
107
117
  * }
108
118
  */
109
119
  static globalScopes: Array<(qb: any, ctx?: any) => void>;
@@ -131,32 +141,22 @@ export declare class Model {
131
141
  * ManyToMany Relationship via a pivot table.
132
142
  *
133
143
  * @example
134
- * // Doctor ↔ Specialization (pivot: doctor_specializations)
135
- * public specializations() {
136
- * return this.manyToMany(Specialization, {
137
- * pivotTable: 'doctor_specializations',
138
- * pivotForeignKey: 'doctor_id',
139
- * pivotRelatedKey: 'specialization_id',
140
- * pivotColumns: ['certified_at'], // extra pivot columns
141
- * });
142
- * }
143
- *
144
- * // Patient ↔ ICD-11 Diagnosis (pivot: patient_diagnoses)
145
- * public diagnoses() {
146
- * return this.manyToMany(Diagnosis, {
147
- * pivotTable: 'patient_diagnoses',
148
- * pivotForeignKey: 'patient_id',
149
- * pivotRelatedKey: 'diagnosis_code',
144
+ * // User ↔ Role (pivot: user_roles)
145
+ * public roles() {
146
+ * return this.manyToMany(Role, {
147
+ * pivotTable: 'user_roles',
148
+ * pivotForeignKey: 'user_id',
149
+ * pivotRelatedKey: 'role_id',
150
+ * pivotColumns: ['assigned_at'], // extra pivot columns
150
151
  * });
151
152
  * }
152
153
  *
153
- * // OT Surgery ↔ Surgeon team (pivot: ot_surgery_doctors)
154
- * public surgeons() {
155
- * return this.manyToMany(Doctor, {
156
- * pivotTable: 'ot_surgery_doctors',
157
- * pivotForeignKey: 'surgery_id',
158
- * pivotRelatedKey: 'doctor_id',
159
- * pivotColumns: ['role'], // primary_surgeon, assistant, anesthesiologist
154
+ * // Article ↔ Tag (pivot: article_tags)
155
+ * public tags() {
156
+ * return this.manyToMany(Tag, {
157
+ * pivotTable: 'article_tags',
158
+ * pivotForeignKey: 'article_id',
159
+ * pivotRelatedKey: 'tag_id',
160
160
  * });
161
161
  * }
162
162
  */
@@ -165,19 +165,19 @@ export declare class Model {
165
165
  * HasManyThrough Relationship.
166
166
  *
167
167
  * @example
168
- * // Hospital has many Beds through Wards
169
- * public beds() {
170
- * return this.hasManyThrough(Bed, Ward, {
171
- * foreignKey: 'hospital_id', // FK on Ward pointing to Hospital
172
- * throughForeignKey: 'ward_id', // FK on Bed pointing to Ward
168
+ * // Country has many Posts through Users
169
+ * public posts() {
170
+ * return this.hasManyThrough(Post, User, {
171
+ * foreignKey: 'country_id', // FK on User pointing to Country
172
+ * throughForeignKey: 'user_id', // FK on Post pointing to User
173
173
  * });
174
174
  * }
175
175
  *
176
- * // Country has many Patients through Hospitals
177
- * public patients() {
178
- * return this.hasManyThrough(Patient, Hospital, {
179
- * foreignKey: 'country_id',
180
- * throughForeignKey: 'hospital_id',
176
+ * // Organization has many Tasks through Projects
177
+ * public tasks() {
178
+ * return this.hasManyThrough(Task, Project, {
179
+ * foreignKey: 'organization_id',
180
+ * throughForeignKey: 'project_id',
181
181
  * });
182
182
  * }
183
183
  */
@@ -186,27 +186,27 @@ export declare class Model {
186
186
  * Attach related records to the ManyToMany pivot table.
187
187
  *
188
188
  * @example
189
- * // Attach specializations to doctor
190
- * await doctor.attach('specializations', [1, 3, 5]);
189
+ * // Attach roles to user
190
+ * await user.attach('roles', [1, 3, 5]);
191
191
  *
192
- * // Attach with pivot data (e.g. certified_at date)
193
- * await doctor.attach('specializations', { 1: { certified_at: '2024-01-01' } });
192
+ * // Attach with pivot data (e.g. assigned_at date)
193
+ * await user.attach('roles', { 1: { assigned_at: '2024-01-01' } });
194
194
  */
195
195
  attach(relationName: string, idsOrMap: number[] | string[] | Record<string | number, Record<string, any>>, connectionOrAdapter?: string | DatabaseAdapter): Promise<void>;
196
196
  /**
197
197
  * Detach related records from the ManyToMany pivot table.
198
198
  *
199
199
  * @example
200
- * await doctor.detach('specializations', [3]); // detach specific
201
- * await doctor.detach('specializations'); // detach all
200
+ * await user.detach('roles', [3]); // detach specific
201
+ * await user.detach('roles'); // detach all
202
202
  */
203
203
  detach(relationName: string, ids?: number[] | string[], connectionOrAdapter?: string | DatabaseAdapter): Promise<void>;
204
204
  /**
205
205
  * Sync pivot table — detach all then re-attach.
206
206
  *
207
207
  * @example
208
- * // Sync a doctor's specializations (replaces all existing)
209
- * await doctor.sync('specializations', [1, 3, 5]);
208
+ * // Sync user's roles (replaces all existing)
209
+ * await user.sync('roles', [1, 3, 5]);
210
210
  */
211
211
  sync(relationName: string, idsOrMap: number[] | string[] | Record<string | number, Record<string, any>>, connectionOrAdapter?: string | DatabaseAdapter): Promise<void>;
212
212
  /**
@@ -247,8 +247,8 @@ export declare class Model {
247
247
  * Update or create a record.
248
248
  *
249
249
  * @example
250
- * await Patient.updateOrCreate(
251
- * { mrn: 'AKMMCH-2024-0001' },
250
+ * await User.updateOrCreate(
251
+ * { email: 'user@example.com' },
252
252
  * { name: 'Rahim', phone: '01700000000' }
253
253
  * );
254
254
  */
@@ -1 +1 @@
1
- {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/database/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/database/model.ts"],"names":[],"mappings":"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"}