@dismissible/nestjs-dismissible 0.0.2-canary.c91edbc.0 → 0.0.2-canary.d2f56d7.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 (41) hide show
  1. package/README.md +51 -67
  2. package/package.json +3 -3
  3. package/src/api/dismissible-item-response.dto.ts +0 -8
  4. package/src/api/dismissible-item.mapper.spec.ts +0 -12
  5. package/src/api/dismissible-item.mapper.ts +2 -8
  6. package/src/api/index.ts +3 -0
  7. package/src/api/use-cases/dismiss/dismiss.controller.spec.ts +1 -2
  8. package/src/api/use-cases/dismiss/dismiss.controller.ts +8 -8
  9. package/src/api/use-cases/get-or-create/get-or-create.controller.spec.ts +2 -42
  10. package/src/api/use-cases/get-or-create/get-or-create.controller.ts +10 -56
  11. package/src/api/use-cases/get-or-create/index.ts +0 -1
  12. package/src/api/use-cases/restore/restore.controller.spec.ts +1 -2
  13. package/src/api/use-cases/restore/restore.controller.ts +8 -8
  14. package/src/api/validation/index.ts +2 -0
  15. package/src/api/validation/param-validation.pipe.spec.ts +317 -0
  16. package/src/api/validation/param-validation.pipe.ts +42 -0
  17. package/src/api/validation/param.decorators.ts +32 -0
  18. package/src/core/dismissible-core.service.spec.ts +3 -45
  19. package/src/core/dismissible-core.service.ts +10 -27
  20. package/src/core/dismissible.service.spec.ts +23 -16
  21. package/src/core/dismissible.service.ts +28 -11
  22. package/src/core/hook-runner.service.spec.ts +369 -19
  23. package/src/core/hook-runner.service.ts +17 -17
  24. package/src/core/index.ts +0 -1
  25. package/src/core/lifecycle-hook.interface.ts +8 -8
  26. package/src/core/service-responses.interface.ts +9 -9
  27. package/src/dismissible.module.integration.spec.ts +685 -0
  28. package/src/dismissible.module.ts +6 -10
  29. package/src/events/dismissible.events.ts +16 -39
  30. package/src/index.ts +1 -0
  31. package/src/request/request-context.decorator.ts +1 -0
  32. package/src/request/request-context.interface.ts +6 -0
  33. package/src/response/http-exception-filter.spec.ts +213 -0
  34. package/src/testing/factories.ts +5 -8
  35. package/src/utils/dismissible.helper.ts +2 -2
  36. package/src/validation/dismissible-input.dto.ts +47 -0
  37. package/src/validation/index.ts +1 -0
  38. package/tsconfig.json +3 -0
  39. package/tsconfig.spec.json +12 -0
  40. package/src/api/use-cases/get-or-create/get-or-create.request.dto.ts +0 -17
  41. package/src/core/create-options.ts +0 -9
@@ -1,4 +1,4 @@
1
- import { BaseMetadata, DismissibleItemDto } from '@dismissible/nestjs-dismissible-item';
1
+ import { DismissibleItemDto } from '@dismissible/nestjs-dismissible-item';
2
2
  import { IRequestContext } from '../request/request-context.interface';
3
3
 
4
4
  /**
@@ -37,7 +37,7 @@ export interface IHookResult {
37
37
  /**
38
38
  * Interface for lifecycle hooks that can intercept dismissible operations.
39
39
  */
40
- export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = BaseMetadata> {
40
+ export interface IDismissibleLifecycleHook {
41
41
  /**
42
42
  * Priority for hook execution (lower numbers run first).
43
43
  * Default is 0.
@@ -64,7 +64,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
64
64
  */
65
65
  onAfterRequest?(
66
66
  itemId: string,
67
- item: DismissibleItemDto<TMetadata>,
67
+ item: DismissibleItemDto,
68
68
  userId: string,
69
69
  context?: IRequestContext,
70
70
  ): Promise<void> | void;
@@ -80,7 +80,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
80
80
  */
81
81
  onBeforeGet?(
82
82
  itemId: string,
83
- item: DismissibleItemDto<TMetadata>,
83
+ item: DismissibleItemDto,
84
84
  userId: string,
85
85
  context?: IRequestContext,
86
86
  ): Promise<IHookResult> | IHookResult;
@@ -91,7 +91,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
91
91
  */
92
92
  onAfterGet?(
93
93
  itemId: string,
94
- item: DismissibleItemDto<TMetadata>,
94
+ item: DismissibleItemDto,
95
95
  userId: string,
96
96
  context?: IRequestContext,
97
97
  ): Promise<void> | void;
@@ -115,7 +115,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
115
115
  */
116
116
  onAfterCreate?(
117
117
  itemId: string,
118
- item: DismissibleItemDto<TMetadata>,
118
+ item: DismissibleItemDto,
119
119
  userId: string,
120
120
  context?: IRequestContext,
121
121
  ): Promise<void> | void;
@@ -138,7 +138,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
138
138
  */
139
139
  onAfterDismiss?(
140
140
  itemId: string,
141
- item: DismissibleItemDto<TMetadata>,
141
+ item: DismissibleItemDto,
142
142
  userId: string,
143
143
  context?: IRequestContext,
144
144
  ): Promise<void> | void;
@@ -161,7 +161,7 @@ export interface IDismissibleLifecycleHook<TMetadata extends BaseMetadata = Base
161
161
  */
162
162
  onAfterRestore?(
163
163
  itemId: string,
164
- item: DismissibleItemDto<TMetadata>,
164
+ item: DismissibleItemDto,
165
165
  userId: string,
166
166
  context?: IRequestContext,
167
167
  ): Promise<void> | void;
@@ -1,11 +1,11 @@
1
- import { BaseMetadata, DismissibleItemDto } from '@dismissible/nestjs-dismissible-item';
1
+ import { DismissibleItemDto } from '@dismissible/nestjs-dismissible-item';
2
2
 
3
3
  /**
4
4
  * Response from getOrCreate operation.
5
5
  */
6
- export interface IGetOrCreateServiceResponse<TMetadata extends BaseMetadata = BaseMetadata> {
6
+ export interface IGetOrCreateServiceResponse {
7
7
  /** The item (either retrieved or created) */
8
- item: DismissibleItemDto<TMetadata>;
8
+ item: DismissibleItemDto;
9
9
 
10
10
  /** Whether the item was newly created */
11
11
  created: boolean;
@@ -14,21 +14,21 @@ export interface IGetOrCreateServiceResponse<TMetadata extends BaseMetadata = Ba
14
14
  /**
15
15
  * Response from dismiss operation.
16
16
  */
17
- export interface IDismissServiceResponse<TMetadata extends BaseMetadata = BaseMetadata> {
17
+ export interface IDismissServiceResponse {
18
18
  /** The dismissed item */
19
- item: DismissibleItemDto<TMetadata>;
19
+ item: DismissibleItemDto;
20
20
 
21
21
  /** The item state before dismissal */
22
- previousItem: DismissibleItemDto<TMetadata>;
22
+ previousItem: DismissibleItemDto;
23
23
  }
24
24
 
25
25
  /**
26
26
  * Response from restore operation.
27
27
  */
28
- export interface IRestoreServiceResponse<TMetadata extends BaseMetadata = BaseMetadata> {
28
+ export interface IRestoreServiceResponse {
29
29
  /** The restored item */
30
- item: DismissibleItemDto<TMetadata>;
30
+ item: DismissibleItemDto;
31
31
 
32
32
  /** The item state before restoration */
33
- previousItem: DismissibleItemDto<TMetadata>;
33
+ previousItem: DismissibleItemDto;
34
34
  }