@dismissible/nestjs-core 2.0.2-alpha.99ffc23.0 → 2.0.2-canary.2913ba8.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 (65) hide show
  1. package/README.md +424 -232
  2. package/package.json +7 -7
  3. package/src/api/dismissible-item.mapper.d.ts +2 -1
  4. package/src/api/dismissible-item.mapper.interface.d.ts +17 -0
  5. package/src/api/dismissible-item.mapper.interface.js +8 -0
  6. package/src/api/dismissible-item.mapper.interface.js.map +1 -0
  7. package/src/api/dismissible-item.mapper.js.map +1 -1
  8. package/src/api/index.d.ts +1 -0
  9. package/src/api/index.js +1 -0
  10. package/src/api/index.js.map +1 -1
  11. package/src/api/use-cases/dismiss/dismiss.controller.d.ts +4 -4
  12. package/src/api/use-cases/dismiss/dismiss.controller.js +7 -6
  13. package/src/api/use-cases/dismiss/dismiss.controller.js.map +1 -1
  14. package/src/api/use-cases/get-or-create/get-or-create.controller.d.ts +4 -4
  15. package/src/api/use-cases/get-or-create/get-or-create.controller.js +7 -6
  16. package/src/api/use-cases/get-or-create/get-or-create.controller.js.map +1 -1
  17. package/src/api/use-cases/restore/restore.controller.d.ts +4 -4
  18. package/src/api/use-cases/restore/restore.controller.js +7 -6
  19. package/src/api/use-cases/restore/restore.controller.js.map +1 -1
  20. package/src/core/dismissible-core.service.d.ts +6 -5
  21. package/src/core/dismissible-core.service.interface.d.ts +48 -0
  22. package/src/core/dismissible-core.service.interface.js +8 -0
  23. package/src/core/dismissible-core.service.interface.js.map +1 -0
  24. package/src/core/dismissible-core.service.js +6 -5
  25. package/src/core/dismissible-core.service.js.map +1 -1
  26. package/src/core/dismissible.service.d.ts +5 -4
  27. package/src/core/dismissible.service.interface.d.ts +33 -0
  28. package/src/core/dismissible.service.interface.js +8 -0
  29. package/src/core/dismissible.service.interface.js.map +1 -0
  30. package/src/core/dismissible.service.js +5 -4
  31. package/src/core/dismissible.service.js.map +1 -1
  32. package/src/core/hook-runner.interface.d.ts +56 -0
  33. package/src/core/hook-runner.interface.js +8 -0
  34. package/src/core/hook-runner.interface.js.map +1 -0
  35. package/src/core/hook-runner.service.d.ts +2 -1
  36. package/src/core/hook-runner.service.js.map +1 -1
  37. package/src/core/index.d.ts +3 -0
  38. package/src/core/index.js +3 -0
  39. package/src/core/index.js.map +1 -1
  40. package/src/dismissible.module.js +31 -1
  41. package/src/dismissible.module.js.map +1 -1
  42. package/src/response/index.d.ts +1 -0
  43. package/src/response/index.js +1 -0
  44. package/src/response/index.js.map +1 -1
  45. package/src/response/response.service.d.ts +2 -1
  46. package/src/response/response.service.interface.d.ts +19 -0
  47. package/src/response/response.service.interface.js +8 -0
  48. package/src/response/response.service.interface.js.map +1 -0
  49. package/src/response/response.service.js.map +1 -1
  50. package/src/utils/date/date.service.d.ts +2 -1
  51. package/src/utils/date/date.service.interface.d.ts +21 -0
  52. package/src/utils/date/date.service.interface.js +8 -0
  53. package/src/utils/date/date.service.interface.js.map +1 -0
  54. package/src/utils/date/date.service.js.map +1 -1
  55. package/src/utils/date/index.d.ts +1 -0
  56. package/src/utils/date/index.js +1 -0
  57. package/src/utils/date/index.js.map +1 -1
  58. package/src/utils/dismissible.helper.d.ts +2 -1
  59. package/src/utils/dismissible.helper.interface.d.ts +14 -0
  60. package/src/utils/dismissible.helper.interface.js +8 -0
  61. package/src/utils/dismissible.helper.interface.js.map +1 -0
  62. package/src/utils/dismissible.helper.js.map +1 -1
  63. package/src/utils/index.d.ts +1 -0
  64. package/src/utils/index.js +1 -0
  65. package/src/utils/index.js.map +1 -1
@@ -0,0 +1,56 @@
1
+ import { DismissibleItemDto } from '@dismissible/nestjs-item';
2
+ import { IRequestContext } from '@dismissible/nestjs-request';
3
+ import { IHookRunResult } from './hook-runner.service';
4
+ /**
5
+ * Injection token for the hook runner provider.
6
+ */
7
+ export declare const DISMISSIBLE_HOOK_RUNNER: unique symbol;
8
+ /**
9
+ * Interface for hook runner providers.
10
+ * Service responsible for running lifecycle hooks.
11
+ */
12
+ export interface IHookRunner {
13
+ /**
14
+ * Run pre-request hooks (global - runs at start of any operation).
15
+ * Use for authentication, rate limiting, request validation.
16
+ */
17
+ runPreRequest(itemId: string, userId: string, context?: IRequestContext): Promise<IHookRunResult>;
18
+ /**
19
+ * Run post-request hooks (global - runs at end of any operation).
20
+ * Use for audit logging, metrics, cleanup.
21
+ */
22
+ runPostRequest(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<void>;
23
+ /**
24
+ * Run pre-get hooks (when item exists and is about to be returned).
25
+ * Receives the item for access control based on item state.
26
+ */
27
+ runPreGet(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<IHookRunResult>;
28
+ /**
29
+ * Run post-get hooks (after item is returned).
30
+ */
31
+ runPostGet(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<void>;
32
+ /**
33
+ * Run pre-create hooks.
34
+ */
35
+ runPreCreate(itemId: string, userId: string, context?: IRequestContext): Promise<IHookRunResult>;
36
+ /**
37
+ * Run post-create hooks.
38
+ */
39
+ runPostCreate(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<void>;
40
+ /**
41
+ * Run pre-dismiss hooks.
42
+ */
43
+ runPreDismiss(itemId: string, userId: string, context?: IRequestContext): Promise<IHookRunResult>;
44
+ /**
45
+ * Run post-dismiss hooks.
46
+ */
47
+ runPostDismiss(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<void>;
48
+ /**
49
+ * Run pre-restore hooks.
50
+ */
51
+ runPreRestore(itemId: string, userId: string, context?: IRequestContext): Promise<IHookRunResult>;
52
+ /**
53
+ * Run post-restore hooks.
54
+ */
55
+ runPostRestore(itemId: string, item: DismissibleItemDto, userId: string, context?: IRequestContext): Promise<void>;
56
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DISMISSIBLE_HOOK_RUNNER = void 0;
4
+ /**
5
+ * Injection token for the hook runner provider.
6
+ */
7
+ exports.DISMISSIBLE_HOOK_RUNNER = Symbol('DISMISSIBLE_HOOK_RUNNER');
8
+ //# sourceMappingURL=hook-runner.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-runner.interface.js","sourceRoot":"","sources":["../../../../../libs/core/src/core/hook-runner.interface.ts"],"names":[],"mappings":";;;AAIA;;GAEG;AACU,QAAA,uBAAuB,GAAG,MAAM,CAAC,yBAAyB,CAAC,CAAC"}
@@ -2,6 +2,7 @@ import { IDismissibleLifecycleHook } from '@dismissible/nestjs-hooks';
2
2
  import { IDismissibleLogger } from '@dismissible/nestjs-logger';
3
3
  import { DismissibleItemDto } from '@dismissible/nestjs-item';
4
4
  import { IRequestContext } from '@dismissible/nestjs-request';
5
+ import { IHookRunner } from './hook-runner.interface';
5
6
  /**
6
7
  * Result from running pre-hooks.
7
8
  */
@@ -20,7 +21,7 @@ export interface IHookRunResult {
20
21
  /**
21
22
  * Service responsible for running lifecycle hooks.
22
23
  */
23
- export declare class HookRunner {
24
+ export declare class HookRunner implements IHookRunner {
24
25
  private readonly logger;
25
26
  private readonly sortedHooks;
26
27
  constructor(hooks: IDismissibleLifecycleHook[], logger: IDismissibleLogger);
@@ -1 +1 @@
1
- {"version":3,"file":"hook-runner.service.js","sourceRoot":"","sources":["../../../../../libs/core/src/core/hook-runner.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hook-runner.service.js","sourceRoot":"","sources":["../../../../../libs/core/src/core/hook-runner.service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  export * from './lifecycle-hook.interface';
2
2
  export * from './service-responses.interface';
3
3
  export * from './dismissible-core.service';
4
+ export * from './dismissible-core.service.interface';
4
5
  export * from './hook-runner.service';
6
+ export * from './hook-runner.interface';
5
7
  export * from './dismissible.service';
8
+ export * from './dismissible.service.interface';
package/src/core/index.js CHANGED
@@ -4,6 +4,9 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./lifecycle-hook.interface"), exports);
5
5
  tslib_1.__exportStar(require("./service-responses.interface"), exports);
6
6
  tslib_1.__exportStar(require("./dismissible-core.service"), exports);
7
+ tslib_1.__exportStar(require("./dismissible-core.service.interface"), exports);
7
8
  tslib_1.__exportStar(require("./hook-runner.service"), exports);
9
+ tslib_1.__exportStar(require("./hook-runner.interface"), exports);
8
10
  tslib_1.__exportStar(require("./dismissible.service"), exports);
11
+ tslib_1.__exportStar(require("./dismissible.service.interface"), exports);
9
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/core/index.ts"],"names":[],"mappings":";;;AAAA,qEAA2C;AAC3C,wEAA8C;AAC9C,qEAA2C;AAC3C,gEAAsC;AACtC,gEAAsC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/core/index.ts"],"names":[],"mappings":";;;AAAA,qEAA2C;AAC3C,wEAA8C;AAC9C,qEAA2C;AAC3C,+EAAqD;AACrD,gEAAsC;AACtC,kEAAwC;AACxC,gEAAsC;AACtC,0EAAgD"}
@@ -9,28 +9,49 @@ const get_or_create_controller_1 = require("./api/use-cases/get-or-create/get-or
9
9
  const dismiss_controller_1 = require("./api/use-cases/dismiss/dismiss.controller");
10
10
  const restore_controller_1 = require("./api/use-cases/restore/restore.controller");
11
11
  const dismissible_service_1 = require("./core/dismissible.service");
12
+ const dismissible_service_interface_1 = require("./core/dismissible.service.interface");
12
13
  const dismissible_core_service_1 = require("./core/dismissible-core.service");
14
+ const dismissible_core_service_interface_1 = require("./core/dismissible-core.service.interface");
13
15
  const hook_runner_service_1 = require("./core/hook-runner.service");
16
+ const hook_runner_interface_1 = require("./core/hook-runner.interface");
14
17
  const dismissible_item_mapper_1 = require("./api/dismissible-item.mapper");
18
+ const dismissible_item_mapper_interface_1 = require("./api/dismissible-item.mapper.interface");
15
19
  const date_service_1 = require("./utils/date/date.service");
20
+ const date_service_interface_1 = require("./utils/date/date.service.interface");
16
21
  const nestjs_hooks_1 = require("@dismissible/nestjs-hooks");
17
22
  const nestjs_logger_1 = require("@dismissible/nestjs-logger");
18
23
  const response_1 = require("./response");
24
+ const response_service_interface_1 = require("./response/response.service.interface");
19
25
  const nestjs_validation_1 = require("@dismissible/nestjs-validation");
20
26
  const nestjs_storage_1 = require("@dismissible/nestjs-storage");
21
27
  const dismissible_helper_1 = require("./utils/dismissible.helper");
28
+ const dismissible_helper_interface_1 = require("./utils/dismissible.helper.interface");
22
29
  const nestjs_item_1 = require("@dismissible/nestjs-item");
23
30
  const defaultControllers = [get_or_create_controller_1.GetOrCreateController, dismiss_controller_1.DismissController, restore_controller_1.RestoreController];
24
31
  let DismissibleModule = DismissibleModule_1 = class DismissibleModule {
25
32
  static forRoot(options = {}) {
26
33
  const providers = [
34
+ // Date service
27
35
  date_service_1.DateService,
36
+ { provide: date_service_interface_1.DISMISSIBLE_DATE_SERVICE, useExisting: date_service_1.DateService },
37
+ // Response service
28
38
  response_1.ResponseService,
39
+ { provide: response_service_interface_1.DISMISSIBLE_RESPONSE_SERVICE, useExisting: response_1.ResponseService },
40
+ // Dismissible helper
41
+ dismissible_helper_1.DismissibleHelper,
42
+ { provide: dismissible_helper_interface_1.DISMISSIBLE_HELPER, useExisting: dismissible_helper_1.DismissibleHelper },
43
+ // Core service
29
44
  dismissible_core_service_1.DismissibleCoreService,
45
+ { provide: dismissible_core_service_interface_1.DISMISSIBLE_CORE_SERVICE, useExisting: dismissible_core_service_1.DismissibleCoreService },
46
+ // Hook runner
30
47
  hook_runner_service_1.HookRunner,
48
+ { provide: hook_runner_interface_1.DISMISSIBLE_HOOK_RUNNER, useExisting: hook_runner_service_1.HookRunner },
49
+ // Main service
31
50
  dismissible_service_1.DismissibleService,
51
+ { provide: dismissible_service_interface_1.DISMISSIBLE_SERVICE, useExisting: dismissible_service_1.DismissibleService },
52
+ // Item mapper
32
53
  dismissible_item_mapper_1.DismissibleItemMapper,
33
- dismissible_helper_1.DismissibleHelper,
54
+ { provide: dismissible_item_mapper_interface_1.DISMISSIBLE_ITEM_MAPPER, useExisting: dismissible_item_mapper_1.DismissibleItemMapper },
34
55
  ];
35
56
  if (options.hooks && options.hooks.length > 0) {
36
57
  for (const hook of options.hooks) {
@@ -67,11 +88,20 @@ let DismissibleModule = DismissibleModule_1 = class DismissibleModule {
67
88
  controllers: options.controllers ?? defaultControllers,
68
89
  providers,
69
90
  exports: [
91
+ // Class exports (for backward compatibility)
70
92
  dismissible_service_1.DismissibleService,
71
93
  dismissible_core_service_1.DismissibleCoreService,
72
94
  dismissible_item_mapper_1.DismissibleItemMapper,
73
95
  date_service_1.DateService,
74
96
  response_1.ResponseService,
97
+ // Symbol exports (for clean DI overriding)
98
+ dismissible_service_interface_1.DISMISSIBLE_SERVICE,
99
+ dismissible_core_service_interface_1.DISMISSIBLE_CORE_SERVICE,
100
+ dismissible_item_mapper_interface_1.DISMISSIBLE_ITEM_MAPPER,
101
+ date_service_interface_1.DISMISSIBLE_DATE_SERVICE,
102
+ response_service_interface_1.DISMISSIBLE_RESPONSE_SERVICE,
103
+ hook_runner_interface_1.DISMISSIBLE_HOOK_RUNNER,
104
+ dismissible_helper_interface_1.DISMISSIBLE_HELPER,
75
105
  nestjs_hooks_1.DISMISSIBLE_HOOKS,
76
106
  ],
77
107
  };
@@ -1 +1 @@
1
- {"version":3,"file":"dismissible.module.js","sourceRoot":"","sources":["../../../../libs/core/src/dismissible.module.ts"],"names":[],"mappings":";;;;;AAAA,2CAAuE;AACvE,yDAA2D;AAC3D,qGAA+F;AAC/F,mFAA+E;AAC/E,mFAA+E;AAC/E,oEAAgE;AAChE,8EAAyE;AACzE,oEAAwD;AACxD,2EAAsE;AACtE,4DAAwD;AACxD,4DAAyF;AACzF,8DAA2F;AAC3F,yCAA6D;AAC7D,sEAAkE;AAClE,gEAA8F;AAC9F,mEAA+D;AAC/D,0DAAiE;AAajE,MAAM,kBAAkB,GAAG,CAAC,gDAAqB,EAAE,sCAAiB,EAAE,sCAAiB,CAAC,CAAC;AAGlF,IAAM,iBAAiB,yBAAvB,MAAM,iBAAiB;IAC5B,MAAM,CAAC,OAAO,CAAC,UAAqC,EAAE;QACpD,MAAM,SAAS,GAAe;YAC5B,0BAAW;YACX,0BAAe;YACf,iDAAsB;YACtB,gCAAU;YACV,wCAAkB;YAClB,+CAAqB;YACrB,sCAAiB;SAClB,CAAC;QAEF,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBACjC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,CAAC;YAED,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,gCAAiB;gBAC1B,UAAU,EAAE,CAAC,GAAG,KAAkC,EAAE,EAAE,CAAC,KAAK;gBAC5D,MAAM,EAAE,OAAO,CAAC,KAAK;aACtB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,IAAI,CAAC;gBACb,OAAO,EAAE,gCAAiB;gBAC1B,QAAQ,EAAE,EAAE;aACb,CAAC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,KAAK,MAAM,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACzC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,OAAO;YACL,MAAM,EAAE,mBAAiB;YACzB,OAAO,EAAE;gBACP,kCAAkB,CAAC,OAAO,EAAE;gBAC5B,4BAAY,CAAC,OAAO,CAAC,OAAO,CAAC;gBAC7B,oCAAgB;gBAChB,yBAAc;gBACd,OAAO,CAAC,OAAO,IAAI,8BAAa;gBAChC,mCAAqB;gBACrB,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;aAC3B;YACD,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,kBAAkB;YACtD,SAAS;YACT,OAAO,EAAE;gBACP,wCAAkB;gBAClB,iDAAsB;gBACtB,+CAAqB;gBACrB,0BAAW;gBACX,0BAAe;gBACf,gCAAiB;aAClB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AA1DY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,iBAAiB,CA0D7B"}
1
+ {"version":3,"file":"dismissible.module.js","sourceRoot":"","sources":["../../../../libs/core/src/dismissible.module.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export * from './response.module';
2
2
  export * from './response.service';
3
+ export * from './response.service.interface';
3
4
  export * from './http-exception-filter';
4
5
  export * from './dtos';
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./response.module"), exports);
5
5
  tslib_1.__exportStar(require("./response.service"), exports);
6
+ tslib_1.__exportStar(require("./response.service.interface"), exports);
6
7
  tslib_1.__exportStar(require("./http-exception-filter"), exports);
7
8
  tslib_1.__exportStar(require("./dtos"), exports);
8
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/response/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC;AAClC,6DAAmC;AACnC,kEAAwC;AACxC,iDAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/response/index.ts"],"names":[],"mappings":";;;AAAA,4DAAkC;AAClC,6DAAmC;AACnC,uEAA6C;AAC7C,kEAAwC;AACxC,iDAAuB"}
@@ -1,6 +1,7 @@
1
1
  import { HttpException } from '@nestjs/common';
2
2
  import { IErrorResponseDto, ISuccessResponseDto } from './dtos';
3
- export declare class ResponseService {
3
+ import { IResponseService } from './response.service.interface';
4
+ export declare class ResponseService implements IResponseService {
4
5
  success<T>(data: T): ISuccessResponseDto<T>;
5
6
  error(error: HttpException): IErrorResponseDto;
6
7
  }
@@ -0,0 +1,19 @@
1
+ import { HttpException } from '@nestjs/common';
2
+ import { IErrorResponseDto, ISuccessResponseDto } from './dtos';
3
+ /**
4
+ * Injection token for the response service provider.
5
+ */
6
+ export declare const DISMISSIBLE_RESPONSE_SERVICE: unique symbol;
7
+ /**
8
+ * Interface for response service providers.
9
+ */
10
+ export interface IResponseService {
11
+ /**
12
+ * Create a success response.
13
+ */
14
+ success<T>(data: T): ISuccessResponseDto<T>;
15
+ /**
16
+ * Create an error response.
17
+ */
18
+ error(error: HttpException): IErrorResponseDto;
19
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DISMISSIBLE_RESPONSE_SERVICE = void 0;
4
+ /**
5
+ * Injection token for the response service provider.
6
+ */
7
+ exports.DISMISSIBLE_RESPONSE_SERVICE = Symbol('DISMISSIBLE_RESPONSE_SERVICE');
8
+ //# sourceMappingURL=response.service.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"response.service.interface.js","sourceRoot":"","sources":["../../../../../libs/core/src/response/response.service.interface.ts"],"names":[],"mappings":";;;AAGA;;GAEG;AACU,QAAA,4BAA4B,GAAG,MAAM,CAAC,8BAA8B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"response.service.js","sourceRoot":"","sources":["../../../../../libs/core/src/response/response.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA2D;AAIpD,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,OAAO,CAAI,IAAO;QAChB,OAAO;YACL,IAAI;SACL,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAoB;QACxB,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE;aACxB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAfY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;GACA,eAAe,CAe3B"}
1
+ {"version":3,"file":"response.service.js","sourceRoot":"","sources":["../../../../../libs/core/src/response/response.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA2D;AAKpD,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,OAAO,CAAI,IAAO;QAChB,OAAO;YACL,IAAI;SACL,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAoB;QACxB,OAAO;YACL,KAAK,EAAE;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE;aACxB;SACF,CAAC;IACJ,CAAC;CACF,CAAA;AAfY,0CAAe;0BAAf,eAAe;IAD3B,IAAA,mBAAU,GAAE;GACA,eAAe,CAe3B"}
@@ -1,7 +1,8 @@
1
+ import { IDateService } from './date.service.interface';
1
2
  /**
2
3
  * Service for date operations.
3
4
  */
4
- export declare class DateService {
5
+ export declare class DateService implements IDateService {
5
6
  getNow(): Date;
6
7
  parseIso(isoString: string): Date;
7
8
  toIso(date: Date): string;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Injection token for the date service provider.
3
+ */
4
+ export declare const DISMISSIBLE_DATE_SERVICE: unique symbol;
5
+ /**
6
+ * Interface for date service providers.
7
+ */
8
+ export interface IDateService {
9
+ /**
10
+ * Get the current date/time.
11
+ */
12
+ getNow(): Date;
13
+ /**
14
+ * Parse an ISO date string.
15
+ */
16
+ parseIso(isoString: string): Date;
17
+ /**
18
+ * Convert a date to ISO string.
19
+ */
20
+ toIso(date: Date): string;
21
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DISMISSIBLE_DATE_SERVICE = void 0;
4
+ /**
5
+ * Injection token for the date service provider.
6
+ */
7
+ exports.DISMISSIBLE_DATE_SERVICE = Symbol('DISMISSIBLE_DATE_SERVICE');
8
+ //# sourceMappingURL=date.service.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.service.interface.js","sourceRoot":"","sources":["../../../../../../libs/core/src/utils/date/date.service.interface.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACU,QAAA,wBAAwB,GAAG,MAAM,CAAC,0BAA0B,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"date.service.js","sourceRoot":"","sources":["../../../../../../libs/core/src/utils/date/date.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAE5C;;GAEG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,MAAM;QACJ,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAU;QACd,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAZY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;GACA,WAAW,CAYvB"}
1
+ {"version":3,"file":"date.service.js","sourceRoot":"","sources":["../../../../../../libs/core/src/utils/date/date.service.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAG5C;;GAEG;AAEI,IAAM,WAAW,GAAjB,MAAM,WAAW;IACtB,MAAM;QACJ,OAAO,IAAI,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,QAAQ,CAAC,SAAiB;QACxB,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,IAAU;QACd,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;CACF,CAAA;AAZY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;GACA,WAAW,CAYvB"}
@@ -1 +1,2 @@
1
1
  export * from './date.service';
2
+ export * from './date.service.interface';
@@ -2,4 +2,5 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./date.service"), exports);
5
+ tslib_1.__exportStar(require("./date.service.interface"), exports);
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/core/src/utils/date/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../libs/core/src/utils/date/index.ts"],"names":[],"mappings":";;;AAAA,yDAA+B;AAC/B,mEAAyC"}
@@ -1,4 +1,5 @@
1
1
  import { DismissibleItemDto } from '@dismissible/nestjs-item';
2
- export declare class DismissibleHelper {
2
+ import { IDismissibleHelper } from './dismissible.helper.interface';
3
+ export declare class DismissibleHelper implements IDismissibleHelper {
3
4
  isDismissed(item: DismissibleItemDto): boolean;
4
5
  }
@@ -0,0 +1,14 @@
1
+ import { DismissibleItemDto } from '@dismissible/nestjs-item';
2
+ /**
3
+ * Injection token for the dismissible helper provider.
4
+ */
5
+ export declare const DISMISSIBLE_HELPER: unique symbol;
6
+ /**
7
+ * Interface for dismissible helper providers.
8
+ */
9
+ export interface IDismissibleHelper {
10
+ /**
11
+ * Check if an item is dismissed.
12
+ */
13
+ isDismissed(item: DismissibleItemDto): boolean;
14
+ }
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DISMISSIBLE_HELPER = void 0;
4
+ /**
5
+ * Injection token for the dismissible helper provider.
6
+ */
7
+ exports.DISMISSIBLE_HELPER = Symbol('DISMISSIBLE_HELPER');
8
+ //# sourceMappingURL=dismissible.helper.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dismissible.helper.interface.js","sourceRoot":"","sources":["../../../../../libs/core/src/utils/dismissible.helper.interface.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACU,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dismissible.helper.js","sourceRoot":"","sources":["../../../../../libs/core/src/utils/dismissible.helper.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAIrC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,WAAW,CAAC,IAAwB;QAClC,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IACrE,CAAC;CACF,CAAA;AAJY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;GACA,iBAAiB,CAI7B"}
1
+ {"version":3,"file":"dismissible.helper.js","sourceRoot":"","sources":["../../../../../libs/core/src/utils/dismissible.helper.ts"],"names":[],"mappings":";;;;AAAA,2CAA4C;AAKrC,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAC5B,WAAW,CAAC,IAAwB;QAClC,OAAO,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC;IACrE,CAAC;CACF,CAAA;AAJY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,mBAAU,GAAE;GACA,iBAAiB,CAI7B"}
@@ -1,3 +1,4 @@
1
1
  export * from './date';
2
2
  export * from '../response';
3
3
  export * from './dismissible.helper';
4
+ export * from './dismissible.helper.interface';
@@ -4,4 +4,5 @@ const tslib_1 = require("tslib");
4
4
  tslib_1.__exportStar(require("./date"), exports);
5
5
  tslib_1.__exportStar(require("../response"), exports);
6
6
  tslib_1.__exportStar(require("./dismissible.helper"), exports);
7
+ tslib_1.__exportStar(require("./dismissible.helper.interface"), exports);
7
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,sDAA4B;AAC5B,+DAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../libs/core/src/utils/index.ts"],"names":[],"mappings":";;;AAAA,iDAAuB;AACvB,sDAA4B;AAC5B,+DAAqC;AACrC,yEAA+C"}