stabilize-orm 1.3.8 → 2.1.0

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 (75) hide show
  1. package/README.md +1097 -546
  2. package/dist/auto-migrate.d.ts +34 -0
  3. package/dist/auto-migrate.d.ts.map +1 -0
  4. package/dist/auto-migrate.js +3003 -0
  5. package/dist/auto-migrate.js.map +163 -0
  6. package/dist/cache.d.ts +90 -0
  7. package/dist/cache.d.ts.map +1 -0
  8. package/dist/cache.js +166 -0
  9. package/dist/cache.js.map +64 -0
  10. package/dist/client.d.ts +73 -0
  11. package/dist/client.d.ts.map +1 -0
  12. package/dist/client.js +2997 -0
  13. package/dist/client.js.map +162 -0
  14. package/dist/hooks.d.ts +31 -0
  15. package/dist/hooks.d.ts.map +1 -0
  16. package/dist/hooks.js +4 -0
  17. package/dist/hooks.js.map +11 -0
  18. package/dist/index.d.ts +101 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +3183 -0
  21. package/dist/index.js.map +222 -0
  22. package/dist/logger.d.ts +40 -0
  23. package/dist/logger.d.ts.map +1 -0
  24. package/dist/logger.js +8 -0
  25. package/dist/logger.js.map +11 -0
  26. package/dist/migrations.d.ts +31 -0
  27. package/dist/migrations.d.ts.map +1 -0
  28. package/dist/migrations.js +3009 -0
  29. package/dist/migrations.js.map +164 -0
  30. package/{model.ts → dist/model.d.ts} +124 -189
  31. package/dist/model.d.ts.map +1 -0
  32. package/dist/model.js +4 -0
  33. package/dist/model.js.map +10 -0
  34. package/dist/query-builder.d.ts +91 -0
  35. package/dist/query-builder.d.ts.map +1 -0
  36. package/dist/query-builder.js +14 -0
  37. package/dist/query-builder.js.map +12 -0
  38. package/dist/repository.d.ts +165 -0
  39. package/dist/repository.d.ts.map +1 -0
  40. package/dist/repository.js +176 -0
  41. package/dist/repository.js.map +69 -0
  42. package/dist/tsconfig.tsbuildinfo +1 -0
  43. package/dist/types.d.ts +110 -0
  44. package/dist/types.d.ts.map +1 -0
  45. package/dist/types.js +4 -0
  46. package/dist/types.js.map +10 -0
  47. package/dist/utils/encryption.d.ts +13 -0
  48. package/dist/utils/encryption.d.ts.map +1 -0
  49. package/dist/utils/encryption.js +4 -0
  50. package/dist/utils/encryption.js.map +10 -0
  51. package/package.json +104 -25
  52. package/.eslintrc.json +0 -10
  53. package/.github/ISSUE_TEMPLATE/PULL_REQUEST_TEMPLATE.md +0 -23
  54. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -25
  55. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -17
  56. package/.github/workflows/ci-cd.yml +0 -22
  57. package/CHANGELOG.md +0 -75
  58. package/CODE_OF_CONDUCT.md +0 -87
  59. package/CONTRIBUTING.md +0 -48
  60. package/FUNDING.md +0 -14
  61. package/SECURITY.md +0 -35
  62. package/SUPPORT.md +0 -18
  63. package/bun.lock +0 -667
  64. package/cache.ts +0 -181
  65. package/client.ts +0 -249
  66. package/docker-compose.yml +0 -22
  67. package/hooks.ts +0 -76
  68. package/index.ts +0 -158
  69. package/logger.ts +0 -127
  70. package/migrations.ts +0 -318
  71. package/query-builder.ts +0 -209
  72. package/repository.ts +0 -1096
  73. package/tests/migrations.test.ts +0 -141
  74. package/tsconfig.json +0 -32
  75. package/types.ts +0 -106
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @file auto-migrate.ts
3
+ * @description Adds GORM-like AutoMigrate to Stabilize ORM with index and constraint management.
4
+ */
5
+ import { DBClient } from "./client";
6
+ type ColumnType = "string" | "number" | "boolean" | "date" | "json";
7
+ export interface ModelSchema {
8
+ tableName: string;
9
+ columns: Record<string, {
10
+ type: ColumnType;
11
+ primaryKey?: boolean;
12
+ autoIncrement?: boolean;
13
+ nullable?: boolean;
14
+ default?: any;
15
+ index?: string | boolean;
16
+ unique?: boolean;
17
+ }>;
18
+ indexes?: Array<{
19
+ name: string;
20
+ columns: string[];
21
+ unique?: boolean;
22
+ }>;
23
+ }
24
+ export declare function extractSchema(model: any): ModelSchema;
25
+ export declare function autoMigrate(db: DBClient, models: any | any[]): Promise<void>;
26
+ export interface SeedDefinition {
27
+ name: string;
28
+ run: (db: DBClient) => Promise<void>;
29
+ }
30
+ export declare function defineSeed(name: string, run: (db: DBClient) => Promise<void>): void;
31
+ export declare function runSeeds(db: DBClient, list?: SeedDefinition[]): Promise<void>;
32
+ export declare function resetDatabase(db: DBClient, models: any | any[]): Promise<void>;
33
+ export {};
34
+ //# sourceMappingURL=auto-migrate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-migrate.d.ts","sourceRoot":"","sources":["../auto-migrate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGpC,KAAK,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEpE,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CACb,MAAM,EACN;QACE,IAAI,EAAE,UAAU,CAAC;QACjB,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,OAAO,CAAC,EAAE,GAAG,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QACzB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CACF,CAAC;IACF,OAAO,CAAC,EAAE,KAAK,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,EAAE,CAAC;QAClB,MAAM,CAAC,EAAE,OAAO,CAAC;KAClB,CAAC,CAAC;CACJ;AA+GD,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,WAAW,CAarD;AA2ED,wBAAsB,WAAW,CAC/B,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,GAClB,OAAO,CAAC,IAAI,CAAC,CA4Ff;AAMD,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAID,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAC,QAE5E;AAED,wBAAsB,QAAQ,CAC5B,EAAE,EAAE,QAAQ,EACZ,IAAI,CAAC,EAAE,cAAc,EAAE,GACtB,OAAO,CAAC,IAAI,CAAC,CAKf;AAED,wBAAsB,aAAa,CACjC,EAAE,EAAE,QAAQ,EACZ,MAAM,EAAE,GAAG,GAAG,GAAG,EAAE,GAClB,OAAO,CAAC,IAAI,CAAC,CAcf"}