@kysera/soft-delete 0.5.1 → 0.6.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 (2) hide show
  1. package/README.md +14 -13
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -14,7 +14,7 @@
14
14
  | **Bundle Size** | ~4 KB (minified) |
15
15
  | **Test Coverage** | 39+ tests passing |
16
16
  | **Dependencies** | @kysera/core (workspace) |
17
- | **Peer Dependencies** | kysely >=0.28.8, @kysera/repository, zod ^4.1.13 |
17
+ | **Peer Dependencies** | kysely >=0.28.8, @kysera/repository, zod ^4.1.13 (optional) |
18
18
  | **Target Runtimes** | Node.js 20+, Bun 1.0+, Deno |
19
19
  | **Module System** | ESM only |
20
20
  | **Database Support** | PostgreSQL, MySQL, SQLite |
@@ -381,7 +381,7 @@ The plugin extends repositories with these methods:
381
381
  Mark a record as deleted by setting `deleted_at` timestamp.
382
382
 
383
383
  ```typescript
384
- async softDelete(id: number): Promise<T>
384
+ async softDelete(id: number | string): Promise<T>
385
385
  ```
386
386
 
387
387
  **Example:**
@@ -413,7 +413,7 @@ console.log(directQuery) // Record exists with deleted_at set
413
413
  Restore a soft-deleted record by setting `deleted_at` to `null`.
414
414
 
415
415
  ```typescript
416
- async restore(id: number): Promise<T>
416
+ async restore(id: number | string): Promise<T>
417
417
  ```
418
418
 
419
419
  **Example:**
@@ -443,7 +443,7 @@ const users = await userRepo.findAll()
443
443
  Permanently delete a record from the database (bypasses soft delete).
444
444
 
445
445
  ```typescript
446
- async hardDelete(id: number): Promise<void>
446
+ async hardDelete(id: number | string): Promise<void>
447
447
  ```
448
448
 
449
449
  **Example:**
@@ -529,7 +529,7 @@ console.log(deleted[0].deleted_at) // Not null
529
529
  Find a specific record including if soft-deleted.
530
530
 
531
531
  ```typescript
532
- async findWithDeleted(id: number): Promise<T | null>
532
+ async findWithDeleted(id: number | string): Promise<T | null>
533
533
  ```
534
534
 
535
535
  **Example:**
@@ -840,12 +840,12 @@ The plugin is fully type-safe with TypeScript.
840
840
 
841
841
  ```typescript
842
842
  interface SoftDeleteRepository<T> extends Repository<T> {
843
- softDelete(id: number): Promise<T>
844
- restore(id: number): Promise<T>
845
- hardDelete(id: number): Promise<void>
843
+ softDelete(id: number | string): Promise<T>
844
+ restore(id: number | string): Promise<T>
845
+ hardDelete(id: number | string): Promise<void>
846
846
  findAllWithDeleted(): Promise<T[]>
847
847
  findDeleted(): Promise<T[]>
848
- findWithDeleted(id: number): Promise<T | null>
848
+ findWithDeleted(id: number | string): Promise<T | null>
849
849
  }
850
850
 
851
851
  // Type-safe usage
@@ -896,6 +896,7 @@ interface SoftDeleteOptions {
896
896
  includeDeleted?: boolean // Default: false
897
897
  tables?: string[] // Default: undefined (all tables)
898
898
  primaryKeyColumn?: string // Default: 'id'
899
+ logger?: KyseraLogger // Default: silentLogger (no output)
899
900
  }
900
901
  ```
901
902
 
@@ -919,7 +920,7 @@ const plugin = softDeletePlugin({
919
920
  Soft delete a record by ID.
920
921
 
921
922
  **Parameters:**
922
- - `id: number` - Record ID
923
+ - `id: number | string` - Record ID
923
924
 
924
925
  **Returns:** `Promise<T>` - The soft-deleted record
925
926
 
@@ -932,7 +933,7 @@ Soft delete a record by ID.
932
933
  Restore a soft-deleted record.
933
934
 
934
935
  **Parameters:**
935
- - `id: number` - Record ID
936
+ - `id: number | string` - Record ID
936
937
 
937
938
  **Returns:** `Promise<T>` - The restored record
938
939
 
@@ -943,7 +944,7 @@ Restore a soft-deleted record.
943
944
  Permanently delete a record.
944
945
 
945
946
  **Parameters:**
946
- - `id: number` - Record ID
947
+ - `id: number | string` - Record ID
947
948
 
948
949
  **Returns:** `Promise<void>`
949
950
 
@@ -970,7 +971,7 @@ Find only soft-deleted records.
970
971
  Find a record by ID including if soft-deleted.
971
972
 
972
973
  **Parameters:**
973
- - `id: number` - Record ID
974
+ - `id: number | string` - Record ID
974
975
 
975
976
  **Returns:** `Promise<T | null>`
976
977
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kysera/soft-delete",
3
- "version": "0.5.1",
3
+ "version": "0.6.0",
4
4
  "description": "Soft delete plugin for Kysera ORM",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -16,7 +16,7 @@
16
16
  "src"
17
17
  ],
18
18
  "dependencies": {
19
- "@kysera/core": "0.5.1"
19
+ "@kysera/core": "0.6.0"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@types/better-sqlite3": "^7.6.13",
@@ -28,12 +28,12 @@
28
28
  "typescript": "^5.9.3",
29
29
  "vitest": "^4.0.15",
30
30
  "zod": "^4.1.13",
31
- "@kysera/repository": "0.5.1"
31
+ "@kysera/repository": "0.6.0"
32
32
  },
33
33
  "peerDependencies": {
34
34
  "kysely": ">=0.28.8",
35
35
  "zod": "^4.1.13",
36
- "@kysera/repository": "0.5.1"
36
+ "@kysera/repository": "0.6.0"
37
37
  },
38
38
  "peerDependenciesMeta": {
39
39
  "zod": {