@hexaijs/application 0.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 (123) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +331 -0
  3. package/dist/abstract-application-context.d.ts +13 -0
  4. package/dist/abstract-application-context.d.ts.map +1 -0
  5. package/dist/abstract-application-context.js +35 -0
  6. package/dist/abstract-application-context.js.map +1 -0
  7. package/dist/application-context.d.ts +2 -0
  8. package/dist/application-context.d.ts.map +1 -0
  9. package/dist/application-context.js +6 -0
  10. package/dist/application-context.js.map +1 -0
  11. package/dist/application-event-publisher.d.ts +16 -0
  12. package/dist/application-event-publisher.d.ts.map +1 -0
  13. package/dist/application-event-publisher.js +37 -0
  14. package/dist/application-event-publisher.js.map +1 -0
  15. package/dist/application.d.ts +59 -0
  16. package/dist/application.d.ts.map +1 -0
  17. package/dist/application.js +237 -0
  18. package/dist/application.js.map +1 -0
  19. package/dist/command-handler.d.ts +5 -0
  20. package/dist/command-handler.d.ts.map +1 -0
  21. package/dist/command-handler.js +3 -0
  22. package/dist/command-handler.js.map +1 -0
  23. package/dist/command.d.ts +12 -0
  24. package/dist/command.d.ts.map +1 -0
  25. package/dist/command.js +46 -0
  26. package/dist/command.js.map +1 -0
  27. package/dist/error.d.ts +37 -0
  28. package/dist/error.d.ts.map +1 -0
  29. package/dist/error.js +28 -0
  30. package/dist/error.js.map +1 -0
  31. package/dist/event-handler.d.ts +6 -0
  32. package/dist/event-handler.d.ts.map +1 -0
  33. package/dist/event-handler.js +3 -0
  34. package/dist/event-handler.js.map +1 -0
  35. package/dist/event-publisher.d.ts +4 -0
  36. package/dist/event-publisher.d.ts.map +1 -0
  37. package/dist/event-publisher.js +3 -0
  38. package/dist/event-publisher.js.map +1 -0
  39. package/dist/index.d.ts +18 -0
  40. package/dist/index.d.ts.map +1 -0
  41. package/dist/index.js +34 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/intercepted-application.d.ts +33 -0
  44. package/dist/intercepted-application.d.ts.map +1 -0
  45. package/dist/intercepted-application.js +111 -0
  46. package/dist/intercepted-application.js.map +1 -0
  47. package/dist/interceptor.d.ts +25 -0
  48. package/dist/interceptor.d.ts.map +1 -0
  49. package/dist/interceptor.js +3 -0
  50. package/dist/interceptor.js.map +1 -0
  51. package/dist/logging/create-logger.d.ts +16 -0
  52. package/dist/logging/create-logger.d.ts.map +1 -0
  53. package/dist/logging/create-logger.js +48 -0
  54. package/dist/logging/create-logger.js.map +1 -0
  55. package/dist/logging/index.d.ts +7 -0
  56. package/dist/logging/index.d.ts.map +1 -0
  57. package/dist/logging/index.js +32 -0
  58. package/dist/logging/index.js.map +1 -0
  59. package/dist/logging/logger.d.ts +42 -0
  60. package/dist/logging/logger.d.ts.map +1 -0
  61. package/dist/logging/logger.js +3 -0
  62. package/dist/logging/logger.js.map +1 -0
  63. package/dist/logging/logging-interceptor.d.ts +9 -0
  64. package/dist/logging/logging-interceptor.d.ts.map +1 -0
  65. package/dist/logging/logging-interceptor.js +48 -0
  66. package/dist/logging/logging-interceptor.js.map +1 -0
  67. package/dist/logging/logging-utils.d.ts +16 -0
  68. package/dist/logging/logging-utils.d.ts.map +1 -0
  69. package/dist/logging/logging-utils.js +91 -0
  70. package/dist/logging/logging-utils.js.map +1 -0
  71. package/dist/logging/trace-interceptor.d.ts +16 -0
  72. package/dist/logging/trace-interceptor.d.ts.map +1 -0
  73. package/dist/logging/trace-interceptor.js +53 -0
  74. package/dist/logging/trace-interceptor.js.map +1 -0
  75. package/dist/message-handler.d.ts +4 -0
  76. package/dist/message-handler.d.ts.map +1 -0
  77. package/dist/message-handler.js +3 -0
  78. package/dist/message-handler.js.map +1 -0
  79. package/dist/messaging-support.d.ts +11 -0
  80. package/dist/messaging-support.d.ts.map +1 -0
  81. package/dist/messaging-support.js +40 -0
  82. package/dist/messaging-support.js.map +1 -0
  83. package/dist/query-handler.d.ts +5 -0
  84. package/dist/query-handler.d.ts.map +1 -0
  85. package/dist/query-handler.js +3 -0
  86. package/dist/query-handler.js.map +1 -0
  87. package/dist/query.d.ts +12 -0
  88. package/dist/query.d.ts.map +1 -0
  89. package/dist/query.js +46 -0
  90. package/dist/query.js.map +1 -0
  91. package/dist/request.d.ts +3 -0
  92. package/dist/request.d.ts.map +1 -0
  93. package/dist/request.js +19 -0
  94. package/dist/request.js.map +1 -0
  95. package/dist/result.d.ts +18 -0
  96. package/dist/result.d.ts.map +1 -0
  97. package/dist/result.js +28 -0
  98. package/dist/result.js.map +1 -0
  99. package/dist/selector-based-event-handler.d.ts +29 -0
  100. package/dist/selector-based-event-handler.d.ts.map +1 -0
  101. package/dist/selector-based-event-handler.js +78 -0
  102. package/dist/selector-based-event-handler.js.map +1 -0
  103. package/dist/simple-composite-application.d.ts +15 -0
  104. package/dist/simple-composite-application.d.ts.map +1 -0
  105. package/dist/simple-composite-application.js +61 -0
  106. package/dist/simple-composite-application.js.map +1 -0
  107. package/dist/test/expectations.d.ts +10 -0
  108. package/dist/test/expectations.d.ts.map +1 -0
  109. package/dist/test/expectations.js +33 -0
  110. package/dist/test/expectations.js.map +1 -0
  111. package/dist/test/fixtures/index.d.ts +24 -0
  112. package/dist/test/fixtures/index.d.ts.map +1 -0
  113. package/dist/test/fixtures/index.js +40 -0
  114. package/dist/test/fixtures/index.js.map +1 -0
  115. package/dist/test/fixtures/interceptor-test-helpers.d.ts +34 -0
  116. package/dist/test/fixtures/interceptor-test-helpers.d.ts.map +1 -0
  117. package/dist/test/fixtures/interceptor-test-helpers.js +59 -0
  118. package/dist/test/fixtures/interceptor-test-helpers.js.map +1 -0
  119. package/dist/test/index.d.ts +3 -0
  120. package/dist/test/index.d.ts.map +1 -0
  121. package/dist/test/index.js +19 -0
  122. package/dist/test/index.js.map +1 -0
  123. package/package.json +64 -0
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DummyApplicationContext = void 0;
4
+ exports.createMockCommandHandler = createMockCommandHandler;
5
+ exports.createMockEventHandler = createMockEventHandler;
6
+ exports.createApplicationBuilder = createApplicationBuilder;
7
+ exports.createCommandExecutionTrackingInterceptor = createCommandExecutionTrackingInterceptor;
8
+ exports.createEventExecutionTrackingInterceptor = createEventExecutionTrackingInterceptor;
9
+ const vitest_1 = require("vitest");
10
+ const application_1 = require("../../application");
11
+ const abstract_application_context_1 = require("../../abstract-application-context");
12
+ /**
13
+ * Shared test helpers for interceptor tests
14
+ */
15
+ class DummyApplicationContext extends abstract_application_context_1.AbstractApplicationContext {
16
+ }
17
+ exports.DummyApplicationContext = DummyApplicationContext;
18
+ /**
19
+ * Creates a mock command handler that returns a SuccessResult
20
+ */
21
+ function createMockCommandHandler(data = { foo: "bar" }) {
22
+ return {
23
+ execute: vitest_1.vi.fn().mockResolvedValue(data),
24
+ };
25
+ }
26
+ /**
27
+ * Creates a mock event handler that returns void
28
+ */
29
+ function createMockEventHandler() {
30
+ return {
31
+ canHandle: vitest_1.vi.fn().mockReturnValue(true),
32
+ handle: vitest_1.vi.fn().mockResolvedValue(undefined),
33
+ };
34
+ }
35
+ /**
36
+ * Creates a basic application builder with DummyApplicationContext pre-configured
37
+ */
38
+ function createApplicationBuilder() {
39
+ return new application_1.ApplicationBuilder().withApplicationContext(new DummyApplicationContext());
40
+ }
41
+ /**
42
+ * Creates a command interceptor that tracks execution by appending an ID to an array
43
+ */
44
+ function createCommandExecutionTrackingInterceptor(executionOrder, id) {
45
+ return async (ctx, next) => {
46
+ executionOrder.push(id);
47
+ return await next();
48
+ };
49
+ }
50
+ /**
51
+ * Creates an event interceptor that tracks execution by appending an ID to an array
52
+ */
53
+ function createEventExecutionTrackingInterceptor(executionOrder, id) {
54
+ return async (ctx, next) => {
55
+ executionOrder.push(id);
56
+ return await next();
57
+ };
58
+ }
59
+ //# sourceMappingURL=interceptor-test-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interceptor-test-helpers.js","sourceRoot":"","sources":["../../../src/test/fixtures/interceptor-test-helpers.ts"],"names":[],"mappings":";;;AAcA,4DAIC;AAKD,wDAKC;AAKD,4DAIC;AAKD,8FAQC;AAKD,0FAQC;AA/DD,mCAA4B;AAC5B,+CAAkE;AAClE,iFAA4E;AAG5E;;GAEG;AAEH,MAAa,uBAAwB,SAAQ,yDAA0B;CAAG;AAA1E,0DAA0E;AAE1E;;GAEG;AACH,SAAgB,wBAAwB,CAAC,OAAY,EAAE,GAAG,EAAE,KAAK,EAAE;IAC/D,OAAO;QACH,OAAO,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;KAC3C,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAgB,sBAAsB;IAClC,OAAO;QACH,SAAS,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QACxC,MAAM,EAAE,WAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;KAC/C,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB;IACpC,OAAO,IAAI,gCAAkB,EAAE,CAAC,sBAAsB,CAClD,IAAI,uBAAuB,EAAE,CAChC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAgB,yCAAyC,CACrD,cAAwB,EACxB,EAAU;IAEV,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACvB,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxB,OAAO,MAAM,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC;AACN,CAAC;AAED;;GAEG;AACH,SAAgB,uCAAuC,CACnD,cAAwB,EACxB,EAAU;IAEV,OAAO,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACvB,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxB,OAAO,MAAM,IAAI,EAAE,CAAC;IACxB,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from "./fixtures";
2
+ export * from "./expectations";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,19 @@
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
+ __exportStar(require("./fixtures"), exports);
18
+ __exportStar(require("./expectations"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/test/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,iDAA+B"}
package/package.json ADDED
@@ -0,0 +1,64 @@
1
+ {
2
+ "name": "@hexaijs/application",
3
+ "publishConfig": {
4
+ "access": "public"
5
+ },
6
+ "version": "0.1.0",
7
+ "description": "CQRS Application Framework for Hexagonal Architecture",
8
+ "license": "MIT",
9
+ "author": "Sangwoo Hyun <wkdny.hyun@gmail.com>",
10
+ "contributors": [
11
+ "Seungcheol Baek <victoryiron.baek@gmail.com>",
12
+ "Donghyun Lee <edonghyun@naver.com>"
13
+ ],
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/workingdanny911/hexai.git",
17
+ "directory": "packages/application"
18
+ },
19
+ "homepage": "https://github.com/workingdanny911/hexai#readme",
20
+ "bugs": {
21
+ "url": "https://github.com/workingdanny911/hexai/issues"
22
+ },
23
+ "keywords": [
24
+ "hexai",
25
+ "hexagonal",
26
+ "clean-architecture",
27
+ "ddd",
28
+ "cqrs",
29
+ "typescript",
30
+ "application"
31
+ ],
32
+ "files": [
33
+ "dist",
34
+ "LICENSE"
35
+ ],
36
+ "exports": {
37
+ ".": {
38
+ "types": "./dist/index.d.ts",
39
+ "import": "./dist/index.js",
40
+ "require": "./dist/index.js"
41
+ },
42
+ "./request": {
43
+ "types": "./dist/request.d.ts",
44
+ "import": "./dist/request.js",
45
+ "require": "./dist/request.js"
46
+ }
47
+ },
48
+ "dependencies": {
49
+ "lodash": "^4.17.21",
50
+ "pino": "^9.6.0"
51
+ },
52
+ "peerDependencies": {
53
+ "@hexaijs/core": "^0.2.0"
54
+ },
55
+ "devDependencies": {
56
+ "@types/lodash": "^4.17.20",
57
+ "@types/node": "^20.0.0",
58
+ "pino-pretty": "^13.0.0"
59
+ },
60
+ "scripts": {
61
+ "test": "vitest run",
62
+ "build": "tsc -p ./tsconfig.build.json && tsc-alias"
63
+ }
64
+ }