@schorts/shared-kernel 4.2.3 → 4.4.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 (50) hide show
  1. package/README.md +9 -0
  2. package/dist/cjs/di/dependency-registry.js +21 -0
  3. package/dist/cjs/di/dependency-registry.js.map +1 -0
  4. package/dist/cjs/di/exceptions/dependency-not-registered.js +7 -0
  5. package/dist/cjs/di/exceptions/dependency-not-registered.js.map +1 -0
  6. package/dist/cjs/di/exceptions/index.js +6 -0
  7. package/dist/cjs/di/exceptions/index.js.map +1 -0
  8. package/dist/cjs/di/index.js +21 -0
  9. package/dist/cjs/di/index.js.map +1 -0
  10. package/dist/cjs/index.js +2 -0
  11. package/dist/cjs/index.js.map +1 -1
  12. package/dist/cjs/mail/index.js +3 -0
  13. package/dist/cjs/mail/index.js.map +1 -0
  14. package/dist/cjs/mail/mail.js +3 -0
  15. package/dist/cjs/mail/mail.js.map +1 -0
  16. package/dist/cjs/mail/mailer.js +3 -0
  17. package/dist/cjs/mail/mailer.js.map +1 -0
  18. package/dist/esm/di/dependency-registry.js +21 -0
  19. package/dist/esm/di/dependency-registry.js.map +1 -0
  20. package/dist/esm/di/exceptions/dependency-not-registered.js +7 -0
  21. package/dist/esm/di/exceptions/dependency-not-registered.js.map +1 -0
  22. package/dist/esm/di/exceptions/index.js +6 -0
  23. package/dist/esm/di/exceptions/index.js.map +1 -0
  24. package/dist/esm/di/index.js +21 -0
  25. package/dist/esm/di/index.js.map +1 -0
  26. package/dist/esm/index.js +2 -0
  27. package/dist/esm/index.js.map +1 -1
  28. package/dist/esm/mail/index.js +3 -0
  29. package/dist/esm/mail/index.js.map +1 -0
  30. package/dist/esm/mail/mail.js +3 -0
  31. package/dist/esm/mail/mail.js.map +1 -0
  32. package/dist/esm/mail/mailer.js +3 -0
  33. package/dist/esm/mail/mailer.js.map +1 -0
  34. package/dist/types/di/dependency-registry.d.ts +7 -0
  35. package/dist/types/di/dependency-registry.d.ts.map +1 -0
  36. package/dist/types/di/exceptions/dependency-not-registered.d.ts +3 -0
  37. package/dist/types/di/exceptions/dependency-not-registered.d.ts.map +1 -0
  38. package/dist/types/di/exceptions/index.d.ts +2 -0
  39. package/dist/types/di/exceptions/index.d.ts.map +1 -0
  40. package/dist/types/di/index.d.ts +3 -0
  41. package/dist/types/di/index.d.ts.map +1 -0
  42. package/dist/types/index.d.ts +2 -0
  43. package/dist/types/index.d.ts.map +1 -1
  44. package/dist/types/mail/index.d.ts +3 -0
  45. package/dist/types/mail/index.d.ts.map +1 -0
  46. package/dist/types/mail/mail.d.ts +14 -0
  47. package/dist/types/mail/mail.d.ts.map +1 -0
  48. package/dist/types/mail/mailer.d.ts +5 -0
  49. package/dist/types/mail/mailer.d.ts.map +1 -0
  50. package/package.json +6 -1
package/README.md CHANGED
@@ -63,6 +63,11 @@ Translation keys are centralized in registries for discoverability and tooling,
63
63
 
64
64
  - **JSONAPIConnector:** Connector for interacting with JSON:API-compliant endpoints.
65
65
 
66
+ ### 📬 Mail
67
+
68
+ - **Mailer:** Abstract interface for sending email messages. Decouples infrastructure from application logic by exposing a simple contract for outbound communication.
69
+ - **Mail:** Type-safe structure representing an email payload, including recipients, subject, body, and optional metadata like CC, BCC, and attachments.
70
+
66
71
  ### 🧩 Models
67
72
 
68
73
  - **BaseModel:** Base class for serializable, type-safe models.
@@ -76,6 +81,10 @@ Translation keys are centralized in registries for discoverability and tooling,
76
81
  - **DAO:** Generic interface defining data access operations for domain entities.
77
82
  - **UnitOfWork:** Interface enabling transactional coordination across multiple persistence operations.
78
83
 
84
+ ### 🧰 Dependency Injection
85
+
86
+ - **DependencyRegistry:** A static, type-safe registry for managing application-level dependencies. Inspired by the EntityRegistry pattern, it enables centralized registration and resolution of services, use cases, and state managers without relying on external DI frameworks. Supports both singleton instances and factory-based registrations.
87
+
79
88
  ### 🧠 State Manager
80
89
 
81
90
  - **StateManager:** Abstract reactive state manager with listener support.
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyRegistry = void 0;
4
+ const exceptions_1 = require("./exceptions");
5
+ class DependencyRegistry {
6
+ static registry = new Map();
7
+ static registerSingleton(key, instance) {
8
+ this.registry.set(key, () => instance);
9
+ }
10
+ static registerFactory(key, factory) {
11
+ this.registry.set(key, factory);
12
+ }
13
+ static resolve(key) {
14
+ const factory = this.registry.get(key);
15
+ if (!factory)
16
+ throw new exceptions_1.DependencyNotRegistered(`key: ${key}`);
17
+ return factory();
18
+ }
19
+ }
20
+ exports.DependencyRegistry = DependencyRegistry;
21
+ //# sourceMappingURL=dependency-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-registry.js","sourceRoot":"","sources":["../../../src/di/dependency-registry.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAEvD,MAAa,kBAAkB;IACrB,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEvD,MAAM,CAAC,iBAAiB,CAAO,GAAW,EAAE,QAAc;QACxD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,eAAe,CAAO,GAAW,EAAE,OAAmB;QAC3D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,OAAO,CAAO,GAAW;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,oCAAuB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAE/D,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC;;AAjBH,gDAkBC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyNotRegistered = void 0;
4
+ class DependencyNotRegistered extends Error {
5
+ }
6
+ exports.DependencyNotRegistered = DependencyNotRegistered;
7
+ //# sourceMappingURL=dependency-not-registered.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-not-registered.js","sourceRoot":"","sources":["../../../../src/di/exceptions/dependency-not-registered.ts"],"names":[],"mappings":";;;AAAA,MAAa,uBAAwB,SAAQ,KAAK;CAAG;AAArD,0DAAqD"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyNotRegistered = void 0;
4
+ var dependency_not_registered_1 = require("./dependency-not-registered");
5
+ Object.defineProperty(exports, "DependencyNotRegistered", { enumerable: true, get: function () { return dependency_not_registered_1.DependencyNotRegistered; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/di/exceptions/index.ts"],"names":[],"mappings":";;;AAAA,yEAAsE;AAA7D,oIAAA,uBAAuB,OAAA"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.DependencyRegistry = void 0;
18
+ var dependency_registry_1 = require("./dependency-registry");
19
+ Object.defineProperty(exports, "DependencyRegistry", { enumerable: true, get: function () { return dependency_registry_1.DependencyRegistry; } });
20
+ __exportStar(require("./exceptions"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/di/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA2D;AAAlD,yHAAA,kBAAkB,OAAA;AAC3B,+CAA6B"}
package/dist/cjs/index.js CHANGED
@@ -18,6 +18,7 @@ __exportStar(require("./auth"), exports);
18
18
  __exportStar(require("./converters"), exports);
19
19
  __exportStar(require("./criteria"), exports);
20
20
  __exportStar(require("./dao"), exports);
21
+ __exportStar(require("./di"), exports);
21
22
  __exportStar(require("./domain-events"), exports);
22
23
  __exportStar(require("./entities"), exports);
23
24
  __exportStar(require("./event-bus"), exports);
@@ -25,6 +26,7 @@ __exportStar(require("./formatters"), exports);
25
26
  __exportStar(require("./http"), exports);
26
27
  __exportStar(require("./i18n"), exports);
27
28
  __exportStar(require("./json-api"), exports);
29
+ __exportStar(require("./mail"), exports);
28
30
  __exportStar(require("./messages"), exports);
29
31
  __exportStar(require("./models"), exports);
30
32
  __exportStar(require("./pub-sub"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,8CAA4B;AAC5B,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,uCAAqB;AACrB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,8CAA4B;AAC5B,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mail/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=mail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mail.js","sourceRoot":"","sources":["../../../src/mail/mail.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=mailer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailer.js","sourceRoot":"","sources":["../../../src/mail/mailer.ts"],"names":[],"mappings":""}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyRegistry = void 0;
4
+ const exceptions_1 = require("./exceptions");
5
+ class DependencyRegistry {
6
+ static registry = new Map();
7
+ static registerSingleton(key, instance) {
8
+ this.registry.set(key, () => instance);
9
+ }
10
+ static registerFactory(key, factory) {
11
+ this.registry.set(key, factory);
12
+ }
13
+ static resolve(key) {
14
+ const factory = this.registry.get(key);
15
+ if (!factory)
16
+ throw new exceptions_1.DependencyNotRegistered(`key: ${key}`);
17
+ return factory();
18
+ }
19
+ }
20
+ exports.DependencyRegistry = DependencyRegistry;
21
+ //# sourceMappingURL=dependency-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-registry.js","sourceRoot":"","sources":["../../../src/di/dependency-registry.ts"],"names":[],"mappings":";;;AAAA,6CAAuD;AAEvD,MAAa,kBAAkB;IACrB,MAAM,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAqB,CAAC;IAEvD,MAAM,CAAC,iBAAiB,CAAO,GAAW,EAAE,QAAc;QACxD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,MAAM,CAAC,eAAe,CAAO,GAAW,EAAE,OAAmB;QAC3D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,CAAC,OAAO,CAAO,GAAW;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvC,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,oCAAuB,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;QAE/D,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC;;AAjBH,gDAkBC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyNotRegistered = void 0;
4
+ class DependencyNotRegistered extends Error {
5
+ }
6
+ exports.DependencyNotRegistered = DependencyNotRegistered;
7
+ //# sourceMappingURL=dependency-not-registered.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-not-registered.js","sourceRoot":"","sources":["../../../../src/di/exceptions/dependency-not-registered.ts"],"names":[],"mappings":";;;AAAA,MAAa,uBAAwB,SAAQ,KAAK;CAAG;AAArD,0DAAqD"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DependencyNotRegistered = void 0;
4
+ var dependency_not_registered_1 = require("./dependency-not-registered");
5
+ Object.defineProperty(exports, "DependencyNotRegistered", { enumerable: true, get: function () { return dependency_not_registered_1.DependencyNotRegistered; } });
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/di/exceptions/index.ts"],"names":[],"mappings":";;;AAAA,yEAAsE;AAA7D,oIAAA,uBAAuB,OAAA"}
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.DependencyRegistry = void 0;
18
+ var dependency_registry_1 = require("./dependency-registry");
19
+ Object.defineProperty(exports, "DependencyRegistry", { enumerable: true, get: function () { return dependency_registry_1.DependencyRegistry; } });
20
+ __exportStar(require("./exceptions"), exports);
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/di/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6DAA2D;AAAlD,yHAAA,kBAAkB,OAAA;AAC3B,+CAA6B"}
package/dist/esm/index.js CHANGED
@@ -18,6 +18,7 @@ __exportStar(require("./auth"), exports);
18
18
  __exportStar(require("./converters"), exports);
19
19
  __exportStar(require("./criteria"), exports);
20
20
  __exportStar(require("./dao"), exports);
21
+ __exportStar(require("./di"), exports);
21
22
  __exportStar(require("./domain-events"), exports);
22
23
  __exportStar(require("./entities"), exports);
23
24
  __exportStar(require("./event-bus"), exports);
@@ -25,6 +26,7 @@ __exportStar(require("./formatters"), exports);
25
26
  __exportStar(require("./http"), exports);
26
27
  __exportStar(require("./i18n"), exports);
27
28
  __exportStar(require("./json-api"), exports);
29
+ __exportStar(require("./mail"), exports);
28
30
  __exportStar(require("./messages"), exports);
29
31
  __exportStar(require("./models"), exports);
30
32
  __exportStar(require("./pub-sub"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,8CAA4B;AAC5B,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,+CAA6B;AAC7B,6CAA2B;AAC3B,wCAAsB;AACtB,uCAAqB;AACrB,kDAAgC;AAChC,6CAA2B;AAC3B,8CAA4B;AAC5B,+CAA6B;AAC7B,yCAAuB;AACvB,yCAAuB;AACvB,6CAA2B;AAC3B,yCAAuB;AACvB,6CAA2B;AAC3B,2CAAyB;AACzB,4CAA0B;AAC1B,yCAAuB;AACvB,2CAAyB;AACzB,kDAAgC;AAChC,8CAA4B;AAC5B,iDAA+B;AAC/B,0CAAwB;AACxB,kDAAgC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mail/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=mail.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mail.js","sourceRoot":"","sources":["../../../src/mail/mail.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=mailer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailer.js","sourceRoot":"","sources":["../../../src/mail/mailer.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export declare class DependencyRegistry {
2
+ private static registry;
3
+ static registerSingleton<Type>(key: string, instance: Type): void;
4
+ static registerFactory<Type>(key: string, factory: () => Type): void;
5
+ static resolve<Type>(key: string): Type;
6
+ }
7
+ //# sourceMappingURL=dependency-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-registry.d.ts","sourceRoot":"","sources":["../../../src/di/dependency-registry.ts"],"names":[],"mappings":"AAEA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgC;IAEvD,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,IAAI;IAIjE,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,IAAI;IAIpE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;CAOxC"}
@@ -0,0 +1,3 @@
1
+ export declare class DependencyNotRegistered extends Error {
2
+ }
3
+ //# sourceMappingURL=dependency-not-registered.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dependency-not-registered.d.ts","sourceRoot":"","sources":["../../../../src/di/exceptions/dependency-not-registered.ts"],"names":[],"mappings":"AAAA,qBAAa,uBAAwB,SAAQ,KAAK;CAAG"}
@@ -0,0 +1,2 @@
1
+ export { DependencyNotRegistered } from "./dependency-not-registered";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/di/exceptions/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { DependencyRegistry } from "./dependency-registry";
2
+ export * from "./exceptions";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/di/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,cAAc,cAAc,CAAC"}
@@ -2,6 +2,7 @@ export * from "./auth";
2
2
  export * from "./converters";
3
3
  export * from "./criteria";
4
4
  export * from "./dao";
5
+ export * from "./di";
5
6
  export * from "./domain-events";
6
7
  export * from "./entities";
7
8
  export * from "./event-bus";
@@ -9,6 +10,7 @@ export * from "./formatters";
9
10
  export * from "./http";
10
11
  export * from "./i18n";
11
12
  export * from "./json-api";
13
+ export * from "./mail";
12
14
  export * from "./messages";
13
15
  export * from "./models";
14
16
  export * from "./pub-sub";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,MAAM,CAAC;AACrB,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC;AACxB,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export type { Mail } from "./mail";
2
+ export type { Mailer } from "./mailer";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mail/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,14 @@
1
+ export type Mail = {
2
+ to: string | string[];
3
+ subject: string;
4
+ body: string;
5
+ from?: string;
6
+ cc?: string[];
7
+ bcc?: string[];
8
+ attachments?: Array<{
9
+ filename: string;
10
+ content: string;
11
+ mimeType?: string;
12
+ }>;
13
+ };
14
+ //# sourceMappingURL=mail.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../../src/mail/mail.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG;IACjB,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,CAAC,EAAE,KAAK,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;CACJ,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { Mail } from "./mail";
2
+ export interface Mailer {
3
+ send(mail: Mail): Promise<void>;
4
+ }
5
+ //# sourceMappingURL=mailer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mailer.d.ts","sourceRoot":"","sources":["../../../src/mail/mailer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@schorts/shared-kernel",
3
- "version": "4.2.3",
3
+ "version": "4.4.0",
4
4
  "description": "A modular, type-safe foundation for building expressive, maintainable applications. This package provides core abstractions for domain modeling, HTTP integration, authentication, state management, and more — designed to be framework-agnostic and highly extensible.",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -71,6 +71,11 @@
71
71
  "require": "./dist/cjs/json-api/index.js",
72
72
  "types": "./dist/types/json-api/index.d.ts"
73
73
  },
74
+ "./mail": {
75
+ "import": "./dist/esm/mail/index.js",
76
+ "require": "./dist/cjs/mail/index.js",
77
+ "types": "./dist/types/mail/index.d.ts"
78
+ },
74
79
  "./messages": {
75
80
  "import": "./dist/esm/messages/index.js",
76
81
  "require": "./dist/cjs/messages/index.js",