bootifyjs 0.1.1 → 1.0.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.
- package/dist/api.d.ts +8 -27
- package/dist/api.d.ts.map +1 -0
- package/dist/api.js +68 -134
- package/dist/api.js.map +1 -1
- package/dist/cache/bootstrap.d.ts +6 -0
- package/dist/cache/bootstrap.d.ts.map +1 -0
- package/dist/cache/bootstrap.js +23 -0
- package/dist/cache/bootstrap.js.map +1 -0
- package/dist/cache/cache.service.d.ts +9 -0
- package/dist/cache/cache.service.d.ts.map +1 -0
- package/dist/cache/cache.service.js +40 -0
- package/dist/cache/cache.service.js.map +1 -0
- package/dist/cache/cache.types.d.ts +14 -0
- package/dist/cache/cache.types.d.ts.map +1 -0
- package/dist/cache/cache.types.js +8 -0
- package/dist/cache/cache.types.js.map +1 -0
- package/dist/cache/decorators.d.ts +12 -0
- package/dist/cache/decorators.d.ts.map +1 -0
- package/dist/cache/decorators.js +53 -0
- package/dist/cache/decorators.js.map +1 -0
- package/dist/cache/in-memory-cache.store.d.ts +8 -0
- package/dist/cache/in-memory-cache.store.d.ts.map +1 -0
- package/dist/cache/in-memory-cache.store.js +39 -0
- package/dist/cache/in-memory-cache.store.js.map +1 -0
- package/dist/cache/index.d.ts +5 -0
- package/dist/cache/index.d.ts.map +1 -0
- package/dist/cache/index.js +21 -0
- package/dist/cache/index.js.map +1 -0
- package/dist/core/component-registry.d.ts +7 -0
- package/dist/core/component-registry.d.ts.map +1 -0
- package/dist/core/component-registry.js +9 -0
- package/dist/core/component-registry.js.map +1 -0
- package/dist/core/decorators.d.ts +38 -22
- package/dist/core/decorators.d.ts.map +1 -0
- package/dist/core/decorators.js +155 -174
- package/dist/core/decorators.js.map +1 -1
- package/dist/core/di-container.d.ts +31 -0
- package/dist/core/di-container.d.ts.map +1 -0
- package/dist/core/di-container.js +219 -0
- package/dist/core/di-container.js.map +1 -0
- package/dist/core/index.d.ts +5 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +21 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/request-context.service.d.ts +24 -0
- package/dist/core/request-context.service.d.ts.map +1 -0
- package/dist/core/request-context.service.js +52 -0
- package/dist/core/request-context.service.js.map +1 -0
- package/dist/core/router.d.ts +4 -32
- package/dist/core/router.d.ts.map +1 -0
- package/dist/core/router.js +81 -258
- package/dist/core/router.js.map +1 -1
- package/dist/events/bootstrap.d.ts +8 -0
- package/dist/events/bootstrap.d.ts.map +1 -0
- package/dist/events/bootstrap.js +37 -0
- package/dist/events/bootstrap.js.map +1 -0
- package/dist/events/decorators.d.ts +16 -0
- package/dist/events/decorators.d.ts.map +1 -0
- package/dist/events/decorators.js +37 -0
- package/dist/events/decorators.js.map +1 -0
- package/dist/events/event-bus.service.d.ts +21 -0
- package/dist/events/event-bus.service.d.ts.map +1 -0
- package/dist/events/event-bus.service.js +78 -0
- package/dist/events/event-bus.service.js.map +1 -0
- package/dist/events/event.types.d.ts +17 -0
- package/dist/events/event.types.d.ts.map +1 -0
- package/dist/events/event.types.js.map +1 -0
- package/dist/events/index.d.ts +5 -13
- package/dist/events/index.d.ts.map +1 -0
- package/dist/events/index.js +4 -54
- package/dist/events/index.js.map +1 -1
- package/dist/examples/controllers/health.controller.d.ts +7 -0
- package/dist/examples/controllers/health.controller.d.ts.map +1 -0
- package/dist/{events/examples/system.events.js → examples/controllers/health.controller.js} +16 -15
- package/dist/examples/controllers/health.controller.js.map +1 -0
- package/dist/examples/controllers/todo.controller.d.ts +31 -0
- package/dist/examples/controllers/todo.controller.d.ts.map +1 -0
- package/dist/examples/controllers/todo.controller.js +102 -0
- package/dist/examples/controllers/todo.controller.js.map +1 -0
- package/dist/examples/events/TodoEventHandler.d.ts +2 -0
- package/dist/examples/events/TodoEventHandler.d.ts.map +1 -0
- package/dist/examples/events/TodoEventHandler.js +31 -0
- package/dist/examples/events/TodoEventHandler.js.map +1 -0
- package/dist/examples/events/todo.events.d.ts +16 -0
- package/dist/examples/events/todo.events.d.ts.map +1 -0
- package/dist/examples/events/todo.events.js +13 -0
- package/dist/examples/events/todo.events.js.map +1 -0
- package/dist/examples/index.d.ts +2 -0
- package/dist/examples/index.d.ts.map +1 -0
- package/dist/examples/index.js +35 -0
- package/dist/examples/index.js.map +1 -0
- package/dist/examples/repositories/todo.repository.d.ts +20 -0
- package/dist/examples/repositories/todo.repository.d.ts.map +1 -0
- package/dist/examples/repositories/todo.repository.js +33 -0
- package/dist/examples/repositories/todo.repository.js.map +1 -0
- package/dist/examples/services/todo.service.d.ts +33 -0
- package/dist/examples/services/todo.service.d.ts.map +1 -0
- package/dist/examples/services/todo.service.js +80 -0
- package/dist/examples/services/todo.service.js.map +1 -0
- package/dist/examples/todos/schema.d.ts +54 -0
- package/dist/examples/todos/schema.d.ts.map +1 -0
- package/dist/examples/todos/schema.js +20 -0
- package/dist/examples/todos/schema.js.map +1 -0
- package/dist/index.d.ts +7 -17
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +20 -95
- package/dist/index.js.map +1 -1
- package/dist/logging/config/logging.config.d.ts +31 -3
- package/dist/logging/config/logging.config.d.ts.map +1 -0
- package/dist/logging/config/logging.config.js +43 -93
- package/dist/logging/config/logging.config.js.map +1 -1
- package/dist/logging/core/decorators.d.ts +16 -0
- package/dist/logging/core/decorators.d.ts.map +1 -0
- package/dist/logging/core/decorators.js +74 -0
- package/dist/logging/core/decorators.js.map +1 -0
- package/dist/logging/core/logger.provider.d.ts +4 -0
- package/dist/logging/core/logger.provider.d.ts.map +1 -0
- package/dist/logging/core/logger.provider.js +68 -0
- package/dist/logging/core/logger.provider.js.map +1 -0
- package/dist/logging/core/logger.service.d.ts +9 -27
- package/dist/logging/core/logger.service.d.ts.map +1 -0
- package/dist/logging/core/logger.service.js +34 -164
- package/dist/logging/core/logger.service.js.map +1 -1
- package/dist/logging/core/{startup-logger.service.d.ts → startup.logger.d.ts} +4 -6
- package/dist/logging/core/startup.logger.d.ts.map +1 -0
- package/dist/logging/core/{startup-logger.service.js → startup.logger.js} +36 -42
- package/dist/logging/core/startup.logger.js.map +1 -0
- package/dist/logging/index.d.ts +7 -14
- package/dist/logging/index.d.ts.map +1 -0
- package/dist/logging/index.js +17 -28
- package/dist/logging/index.js.map +1 -1
- package/dist/middleware/auth.middleware.d.ts +3 -0
- package/dist/middleware/auth.middleware.d.ts.map +1 -0
- package/dist/middleware/auth.middleware.js +18 -0
- package/dist/middleware/auth.middleware.js.map +1 -0
- package/dist/middleware/context.middleware.d.ts +7 -0
- package/dist/middleware/context.middleware.d.ts.map +1 -0
- package/dist/middleware/context.middleware.js +25 -0
- package/dist/middleware/context.middleware.js.map +1 -0
- package/dist/middleware/index.d.ts +4 -0
- package/dist/middleware/index.d.ts.map +1 -0
- package/dist/middleware/index.js +20 -0
- package/dist/middleware/index.js.map +1 -0
- package/dist/middleware/request-logger.middleware.d.ts +4 -0
- package/dist/middleware/request-logger.middleware.d.ts.map +1 -0
- package/dist/middleware/request-logger.middleware.js +18 -0
- package/dist/middleware/request-logger.middleware.js.map +1 -0
- package/package.json +52 -47
- package/LICENSE +0 -21
- package/README.md +0 -423
- package/dist/config/app.config.d.ts +0 -29
- package/dist/config/app.config.js +0 -55
- package/dist/config/app.config.js.map +0 -1
- package/dist/controllers/config.controller.d.ts +0 -16
- package/dist/controllers/config.controller.js +0 -66
- package/dist/controllers/config.controller.js.map +0 -1
- package/dist/controllers/events.controller.d.ts +0 -66
- package/dist/controllers/events.controller.js +0 -145
- package/dist/controllers/events.controller.js.map +0 -1
- package/dist/controllers/health.controller.d.ts +0 -20
- package/dist/controllers/health.controller.js +0 -92
- package/dist/controllers/health.controller.js.map +0 -1
- package/dist/controllers/user.controller.d.ts +0 -13
- package/dist/controllers/user.controller.js +0 -209
- package/dist/controllers/user.controller.js.map +0 -1
- package/dist/core/application.d.ts +0 -21
- package/dist/core/application.js +0 -90
- package/dist/core/application.js.map +0 -1
- package/dist/core/config.d.ts +0 -3
- package/dist/core/config.js +0 -78
- package/dist/core/config.js.map +0 -1
- package/dist/core/container.d.ts +0 -17
- package/dist/core/container.js +0 -92
- package/dist/core/container.js.map +0 -1
- package/dist/core/errors.d.ts +0 -18
- package/dist/core/errors.js +0 -74
- package/dist/core/errors.js.map +0 -1
- package/dist/core/middleware.d.ts +0 -8
- package/dist/core/middleware.js +0 -23
- package/dist/core/middleware.js.map +0 -1
- package/dist/core/openapi.d.ts +0 -80
- package/dist/core/openapi.js +0 -189
- package/dist/core/openapi.js.map +0 -1
- package/dist/core/utils.d.ts +0 -7
- package/dist/core/utils.js +0 -75
- package/dist/core/utils.js.map +0 -1
- package/dist/core/validation.d.ts +0 -15
- package/dist/core/validation.js +0 -161
- package/dist/core/validation.js.map +0 -1
- package/dist/events/core/event-bus.d.ts +0 -26
- package/dist/events/core/event-bus.js +0 -253
- package/dist/events/core/event-bus.js.map +0 -1
- package/dist/events/core/event-registry.d.ts +0 -31
- package/dist/events/core/event-registry.js +0 -170
- package/dist/events/core/event-registry.js.map +0 -1
- package/dist/events/decorators/event.decorators.d.ts +0 -11
- package/dist/events/decorators/event.decorators.js +0 -123
- package/dist/events/decorators/event.decorators.js.map +0 -1
- package/dist/events/examples/system.events.d.ts +0 -15
- package/dist/events/examples/system.events.js.map +0 -1
- package/dist/events/examples/user.events.d.ts +0 -68
- package/dist/events/examples/user.events.js +0 -73
- package/dist/events/examples/user.events.js.map +0 -1
- package/dist/events/examples/user.handlers.d.ts +0 -20
- package/dist/events/examples/user.handlers.js +0 -157
- package/dist/events/examples/user.handlers.js.map +0 -1
- package/dist/events/middleware/logging.middleware.d.ts +0 -7
- package/dist/events/middleware/logging.middleware.js +0 -44
- package/dist/events/middleware/logging.middleware.js.map +0 -1
- package/dist/events/middleware/metrics.middleware.d.ts +0 -11
- package/dist/events/middleware/metrics.middleware.js +0 -87
- package/dist/events/middleware/metrics.middleware.js.map +0 -1
- package/dist/events/middleware/validation.middleware.d.ts +0 -8
- package/dist/events/middleware/validation.middleware.js +0 -63
- package/dist/events/middleware/validation.middleware.js.map +0 -1
- package/dist/events/store/memory-event-store.d.ts +0 -21
- package/dist/events/store/memory-event-store.js +0 -81
- package/dist/events/store/memory-event-store.js.map +0 -1
- package/dist/events/types/event.types.d.ts +0 -57
- package/dist/events/types/event.types.js.map +0 -1
- package/dist/examples/basic-api.d.ts +0 -1
- package/dist/examples/basic-api.js +0 -120
- package/dist/examples/basic-api.js.map +0 -1
- package/dist/logging/core/log-context.service.d.ts +0 -11
- package/dist/logging/core/log-context.service.js +0 -40
- package/dist/logging/core/log-context.service.js.map +0 -1
- package/dist/logging/core/startup-logger.service.js.map +0 -1
- package/dist/logging/decorators/log.decorator.d.ts +0 -11
- package/dist/logging/decorators/log.decorator.js +0 -80
- package/dist/logging/decorators/log.decorator.js.map +0 -1
- package/dist/logging/middleware/context.middleware.d.ts +0 -2
- package/dist/logging/middleware/context.middleware.js +0 -29
- package/dist/logging/middleware/context.middleware.js.map +0 -1
- package/dist/logging/middleware/request-logging.middleware.d.ts +0 -3
- package/dist/logging/middleware/request-logging.middleware.js +0 -78
- package/dist/logging/middleware/request-logging.middleware.js.map +0 -1
- package/dist/logging/types/logging.types.d.ts +0 -79
- package/dist/logging/types/logging.types.js +0 -3
- package/dist/logging/types/logging.types.js.map +0 -1
- package/dist/middlewares/auth.middleware.d.ts +0 -2
- package/dist/middlewares/auth.middleware.js +0 -20
- package/dist/middlewares/auth.middleware.js.map +0 -1
- package/dist/middlewares/cors.middleware.d.ts +0 -2
- package/dist/middlewares/cors.middleware.js +0 -16
- package/dist/middlewares/cors.middleware.js.map +0 -1
- package/dist/middlewares/swagger.middleware.d.ts +0 -6
- package/dist/middlewares/swagger.middleware.js +0 -84
- package/dist/middlewares/swagger.middleware.js.map +0 -1
- package/dist/repositories/user.repository.d.ts +0 -16
- package/dist/repositories/user.repository.js +0 -110
- package/dist/repositories/user.repository.js.map +0 -1
- package/dist/schemas/user.schemas.d.ts +0 -214
- package/dist/schemas/user.schemas.js +0 -71
- package/dist/schemas/user.schemas.js.map +0 -1
- package/dist/services/config-demo.service.d.ts +0 -10
- package/dist/services/config-demo.service.js +0 -88
- package/dist/services/config-demo.service.js.map +0 -1
- package/dist/services/user.service.d.ts +0 -21
- package/dist/services/user.service.js +0 -201
- package/dist/services/user.service.js.map +0 -1
- /package/dist/events/{types/event.types.js → event.types.js} +0 -0
package/dist/events/index.d.ts
CHANGED
@@ -1,13 +1,5 @@
|
|
1
|
-
export
|
2
|
-
export
|
3
|
-
export * from './
|
4
|
-
export
|
5
|
-
|
6
|
-
export { ValidationMiddleware } from './middleware/validation.middleware';
|
7
|
-
export { MetricsMiddleware } from './middleware/metrics.middleware';
|
8
|
-
export { MemoryEventStore } from './store/memory-event-store';
|
9
|
-
export * from './examples/user.events';
|
10
|
-
export * from './examples/user.handlers';
|
11
|
-
export * from './examples/system.events';
|
12
|
-
import { EventBus } from './core/event-bus';
|
13
|
-
export declare function configureEventSystem(): EventBus;
|
1
|
+
export * from './bootstrap';
|
2
|
+
export * from './event-bus.service';
|
3
|
+
export * from './event.types';
|
4
|
+
export * from './decorators';
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,qBAAqB,CAAA;AACnC,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA"}
|
package/dist/events/index.js
CHANGED
@@ -14,58 +14,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
15
15
|
};
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
Object.defineProperty(exports, "EventBus", { enumerable: true, get: function () { return event_bus_1.EventBus; } });
|
22
|
-
var event_registry_1 = require("./core/event-registry");
|
23
|
-
Object.defineProperty(exports, "EventRegistry", { enumerable: true, get: function () { return event_registry_1.EventRegistry; } });
|
24
|
-
// Type exports
|
25
|
-
__exportStar(require("./types/event.types"), exports);
|
26
|
-
// Decorator exports
|
27
|
-
var event_decorators_1 = require("./decorators/event.decorators");
|
28
|
-
Object.defineProperty(exports, "Event", { enumerable: true, get: function () { return event_decorators_1.Event; } });
|
29
|
-
Object.defineProperty(exports, "EventEmitter", { enumerable: true, get: function () { return event_decorators_1.EventEmitter; } });
|
30
|
-
Object.defineProperty(exports, "EventListener", { enumerable: true, get: function () { return event_decorators_1.EventListener; } });
|
31
|
-
Object.defineProperty(exports, "EmitEvent", { enumerable: true, get: function () { return event_decorators_1.EmitEvent; } });
|
32
|
-
Object.defineProperty(exports, "registerEventHandlers", { enumerable: true, get: function () { return event_decorators_1.registerEventHandlers; } });
|
33
|
-
// Middleware exports
|
34
|
-
var logging_middleware_1 = require("./middleware/logging.middleware");
|
35
|
-
Object.defineProperty(exports, "LoggingMiddleware", { enumerable: true, get: function () { return logging_middleware_1.LoggingMiddleware; } });
|
36
|
-
var validation_middleware_1 = require("./middleware/validation.middleware");
|
37
|
-
Object.defineProperty(exports, "ValidationMiddleware", { enumerable: true, get: function () { return validation_middleware_1.ValidationMiddleware; } });
|
38
|
-
var metrics_middleware_1 = require("./middleware/metrics.middleware");
|
39
|
-
Object.defineProperty(exports, "MetricsMiddleware", { enumerable: true, get: function () { return metrics_middleware_1.MetricsMiddleware; } });
|
40
|
-
// Store exports
|
41
|
-
var memory_event_store_1 = require("./store/memory-event-store");
|
42
|
-
Object.defineProperty(exports, "MemoryEventStore", { enumerable: true, get: function () { return memory_event_store_1.MemoryEventStore; } });
|
43
|
-
// Example exports
|
44
|
-
__exportStar(require("./examples/user.events"), exports);
|
45
|
-
__exportStar(require("./examples/user.handlers"), exports);
|
46
|
-
__exportStar(require("./examples/system.events"), exports);
|
47
|
-
// Configuration and setup
|
48
|
-
const event_bus_2 = require("./core/event-bus");
|
49
|
-
const logging_middleware_2 = require("./middleware/logging.middleware");
|
50
|
-
const validation_middleware_2 = require("./middleware/validation.middleware");
|
51
|
-
const metrics_middleware_2 = require("./middleware/metrics.middleware");
|
52
|
-
const event_decorators_2 = require("./decorators/event.decorators");
|
53
|
-
const user_handlers_1 = require("./examples/user.handlers");
|
54
|
-
// Auto-configure event system
|
55
|
-
function configureEventSystem() {
|
56
|
-
const eventBus = event_bus_2.EventBus.getInstance({
|
57
|
-
enableLogging: true,
|
58
|
-
enableMetrics: true,
|
59
|
-
maxRetries: 3,
|
60
|
-
retryDelay: 1000,
|
61
|
-
enableDeadLetterQueue: true
|
62
|
-
});
|
63
|
-
// Add middleware
|
64
|
-
eventBus.use(new validation_middleware_2.ValidationMiddleware());
|
65
|
-
eventBus.use(new logging_middleware_2.LoggingMiddleware());
|
66
|
-
eventBus.use(new metrics_middleware_2.MetricsMiddleware());
|
67
|
-
// Register event handlers
|
68
|
-
(0, event_decorators_2.registerEventHandlers)([user_handlers_1.UserEventHandlers]);
|
69
|
-
return eventBus;
|
70
|
-
}
|
17
|
+
__exportStar(require("./bootstrap"), exports);
|
18
|
+
__exportStar(require("./event-bus.service"), exports);
|
19
|
+
__exportStar(require("./event.types"), exports);
|
20
|
+
__exportStar(require("./decorators"), exports);
|
71
21
|
//# sourceMappingURL=index.js.map
|
package/dist/events/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/events/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,sDAAmC;AACnC,gDAA6B;AAC7B,+CAA4B"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"health.controller.d.ts","sourceRoot":"","sources":["../../../src/examples/controllers/health.controller.ts"],"names":[],"mappings":"AAEA,qBACa,gBAAgB;IAE3B,SAAS;;;;CAGV"}
|
@@ -9,20 +9,21 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
9
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
10
|
};
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
-
exports.
|
13
|
-
const
|
14
|
-
let
|
15
|
-
|
16
|
-
|
17
|
-
this.version = 1;
|
18
|
-
if (data) {
|
19
|
-
Object.assign(this, data);
|
20
|
-
}
|
12
|
+
exports.HealthController = void 0;
|
13
|
+
const decorators_1 = require("../../core/decorators");
|
14
|
+
let HealthController = class HealthController {
|
15
|
+
getHealth() {
|
16
|
+
return { status: 'ok', timestamp: new Date().toISOString() };
|
21
17
|
}
|
22
18
|
};
|
23
|
-
exports.
|
24
|
-
|
25
|
-
(0,
|
26
|
-
__metadata("design:
|
27
|
-
|
28
|
-
|
19
|
+
exports.HealthController = HealthController;
|
20
|
+
__decorate([
|
21
|
+
(0, decorators_1.Get)('/health'),
|
22
|
+
__metadata("design:type", Function),
|
23
|
+
__metadata("design:paramtypes", []),
|
24
|
+
__metadata("design:returntype", void 0)
|
25
|
+
], HealthController.prototype, "getHealth", null);
|
26
|
+
exports.HealthController = HealthController = __decorate([
|
27
|
+
(0, decorators_1.Controller)('/api')
|
28
|
+
], HealthController);
|
29
|
+
//# sourceMappingURL=health.controller.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"health.controller.js","sourceRoot":"","sources":["../../../src/examples/controllers/health.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAuD;AAGhD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAE3B,SAAS;QACP,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAA;IAC9D,CAAC;CACF,CAAA;AALY,4CAAgB;AAE3B;IADC,IAAA,gBAAG,EAAC,SAAS,CAAC;;;;iDAGd;2BAJU,gBAAgB;IAD5B,IAAA,uBAAU,EAAC,MAAM,CAAC;GACN,gBAAgB,CAK5B"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { z } from 'zod';
|
2
|
+
import { TodoService } from '../services/todo.service';
|
3
|
+
declare const todoSchema: z.ZodObject<{
|
4
|
+
text: z.ZodString;
|
5
|
+
}, "strip", z.ZodTypeAny, {
|
6
|
+
text: string;
|
7
|
+
}, {
|
8
|
+
text: string;
|
9
|
+
}>;
|
10
|
+
export declare class TodoController {
|
11
|
+
private readonly todoService;
|
12
|
+
constructor(todoService: TodoService);
|
13
|
+
private logger;
|
14
|
+
getAllTodos(): {
|
15
|
+
id: string;
|
16
|
+
text: string;
|
17
|
+
completed: boolean;
|
18
|
+
}[];
|
19
|
+
getTodoById(id: string): {
|
20
|
+
id: string;
|
21
|
+
text: string;
|
22
|
+
completed: boolean;
|
23
|
+
};
|
24
|
+
createTodo(body: z.infer<typeof todoSchema>): {
|
25
|
+
id: string;
|
26
|
+
text: string;
|
27
|
+
completed: boolean;
|
28
|
+
};
|
29
|
+
}
|
30
|
+
export {};
|
31
|
+
//# sourceMappingURL=todo.controller.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.controller.d.ts","sourceRoot":"","sources":["../../../src/examples/controllers/todo.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAgBtD,QAAA,MAAM,UAAU;;;;;;EAIH,CAAA;AAQb,qBAEa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAAX,WAAW,EAAE,WAAW;IACrD,OAAO,CAAC,MAAM,CAAgB;IAI9B,WAAW;;;;;IAUX,WAAW,CAAc,EAAE,EAAE,MAAM;;;;;IAoBnC,UAAU,CAAS,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC;;;;;CAIpD"}
|
@@ -0,0 +1,102 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.TodoController = void 0;
|
16
|
+
const zod_1 = require("zod");
|
17
|
+
const decorators_1 = require("../../core/decorators");
|
18
|
+
const todo_service_1 = require("../services/todo.service");
|
19
|
+
const auth_middleware_1 = require("../../middleware/auth.middleware");
|
20
|
+
const di_container_1 = require("../../core/di-container");
|
21
|
+
const request_context_service_1 = require("../../core/request-context.service");
|
22
|
+
const decorators_2 = require("../../cache/decorators");
|
23
|
+
const decorators_3 = require("../../logging/core/decorators");
|
24
|
+
const createTodoSchema = {
|
25
|
+
body: zod_1.z
|
26
|
+
.object({
|
27
|
+
text: zod_1.z.string().min(1, 'Text cannot be empty'),
|
28
|
+
})
|
29
|
+
.required(),
|
30
|
+
};
|
31
|
+
const todoSchema = zod_1.z
|
32
|
+
.object({
|
33
|
+
text: zod_1.z.string().min(2, 'Text cannot be empty'),
|
34
|
+
})
|
35
|
+
.required();
|
36
|
+
const getTodoByIdSchema = {
|
37
|
+
params: zod_1.z.object({
|
38
|
+
id: zod_1.z.string().regex(/^\d+$/, 'ID must be a numeric string'),
|
39
|
+
}),
|
40
|
+
};
|
41
|
+
let TodoController = class TodoController {
|
42
|
+
constructor(todoService) {
|
43
|
+
this.todoService = todoService;
|
44
|
+
}
|
45
|
+
getAllTodos() {
|
46
|
+
const context = di_container_1.container.resolve(request_context_service_1.RequestContextService);
|
47
|
+
console.log(context.store());
|
48
|
+
this.logger.info('Hello from get all todo');
|
49
|
+
return this.todoService.getAllTodos();
|
50
|
+
}
|
51
|
+
getTodoById(id) {
|
52
|
+
this.logger.info('Hello from get todo by id');
|
53
|
+
return this.todoService.getTodoById(id);
|
54
|
+
}
|
55
|
+
createTodo(body) {
|
56
|
+
this.logger.info('Hello from create todo', body);
|
57
|
+
return this.todoService.createTodo(body.text);
|
58
|
+
}
|
59
|
+
};
|
60
|
+
exports.TodoController = TodoController;
|
61
|
+
__decorate([
|
62
|
+
(0, decorators_1.Get)('/'),
|
63
|
+
(0, decorators_1.UseMiddleware)(auth_middleware_1.authMiddleware),
|
64
|
+
__metadata("design:type", Function),
|
65
|
+
__metadata("design:paramtypes", []),
|
66
|
+
__metadata("design:returntype", void 0)
|
67
|
+
], TodoController.prototype, "getAllTodos", null);
|
68
|
+
__decorate([
|
69
|
+
(0, decorators_1.Get)('/:id'),
|
70
|
+
(0, decorators_2.Cacheable)({ key: 'todo', ttl: 60 }),
|
71
|
+
__param(0, (0, decorators_1.Param)('id')),
|
72
|
+
__metadata("design:type", Function),
|
73
|
+
__metadata("design:paramtypes", [String]),
|
74
|
+
__metadata("design:returntype", void 0)
|
75
|
+
], TodoController.prototype, "getTodoById", null);
|
76
|
+
__decorate([
|
77
|
+
(0, decorators_1.Post)('/'),
|
78
|
+
(0, decorators_3.Audit)({
|
79
|
+
action: 'create',
|
80
|
+
resource: 'todo',
|
81
|
+
}),
|
82
|
+
(0, decorators_1.Schema)({
|
83
|
+
body: todoSchema,
|
84
|
+
responses: {
|
85
|
+
201: zod_1.z.object({
|
86
|
+
id: zod_1.z.string(),
|
87
|
+
text: zod_1.z.string(),
|
88
|
+
completed: zod_1.z.boolean(),
|
89
|
+
}),
|
90
|
+
},
|
91
|
+
}),
|
92
|
+
__param(0, (0, decorators_1.Body)()),
|
93
|
+
__metadata("design:type", Function),
|
94
|
+
__metadata("design:paramtypes", [void 0]),
|
95
|
+
__metadata("design:returntype", void 0)
|
96
|
+
], TodoController.prototype, "createTodo", null);
|
97
|
+
exports.TodoController = TodoController = __decorate([
|
98
|
+
(0, decorators_3.Logger)(),
|
99
|
+
(0, decorators_1.Controller)('/todos'),
|
100
|
+
__metadata("design:paramtypes", [todo_service_1.TodoService])
|
101
|
+
], TodoController);
|
102
|
+
//# sourceMappingURL=todo.controller.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.controller.js","sourceRoot":"","sources":["../../../src/examples/controllers/todo.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,6BAAuB;AACvB,sDAAiG;AACjG,2DAAsD;AACtD,sEAAiE;AACjE,0DAAmD;AACnD,gFAA0E;AAC1E,uDAAkD;AAClD,8DAA6D;AAG7D,MAAM,gBAAgB,GAAG;IACvB,IAAI,EAAE,OAAC;SACJ,MAAM,CAAC;QACN,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;KAChD,CAAC;SACD,QAAQ,EAAE;CACd,CAAA;AAED,MAAM,UAAU,GAAG,OAAC;KACjB,MAAM,CAAC;IACN,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,sBAAsB,CAAC;CAChD,CAAC;KACD,QAAQ,EAAE,CAAA;AAEb,MAAM,iBAAiB,GAAG;IACxB,MAAM,EAAE,OAAC,CAAC,MAAM,CAAC;QACf,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,6BAA6B,CAAC;KAC7D,CAAC;CACH,CAAA;AAIM,IAAM,cAAc,GAApB,MAAM,cAAc;IACzB,YAA6B,WAAwB;QAAxB,gBAAW,GAAX,WAAW,CAAa;IAAG,CAAC;IAKzD,WAAW;QACT,MAAM,OAAO,GAAG,wBAAS,CAAC,OAAO,CAAwB,+CAAqB,CAAC,CAAA;QAC/E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;QAC3C,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAA;IACvC,CAAC;IAID,WAAW,CAAc,EAAU;QACjC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAA;QAC7C,OAAO,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;IACzC,CAAC;IAiBD,UAAU,CAAS,IAAgC;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAA;QAChD,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC;CACF,CAAA;AAxCY,wCAAc;AAMzB;IAFC,IAAA,gBAAG,EAAC,GAAG,CAAC;IACR,IAAA,0BAAa,EAAC,gCAAc,CAAC;;;;iDAO7B;AAID;IAFC,IAAA,gBAAG,EAAC,MAAM,CAAC;IACX,IAAA,sBAAS,EAAC,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC;IACvB,WAAA,IAAA,kBAAK,EAAC,IAAI,CAAC,CAAA;;;;iDAGvB;AAiBD;IAfC,IAAA,iBAAI,EAAC,GAAG,CAAC;IACT,IAAA,kBAAK,EAAC;QACL,MAAM,EAAE,QAAQ;QAChB,QAAQ,EAAE,MAAM;KACjB,CAAC;IACD,IAAA,mBAAM,EAAC;QACN,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE;YACT,GAAG,EAAE,OAAC,CAAC,MAAM,CAAC;gBACZ,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;gBACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;gBAChB,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE;aACvB,CAAC;SACH;KACF,CAAC;IACU,WAAA,IAAA,iBAAI,GAAE,CAAA;;;;gDAGjB;yBAvCU,cAAc;IAF1B,IAAA,mBAAM,GAAE;IACR,IAAA,uBAAU,EAAC,QAAQ,CAAC;qCAEuB,0BAAW;GAD1C,cAAc,CAwC1B"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TodoEventHandler.d.ts","sourceRoot":"","sources":["../../../src/examples/events/TodoEventHandler.ts"],"names":[],"mappings":""}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
12
|
+
const decorators_1 = require("../../core/decorators");
|
13
|
+
const decorators_2 = require("../../events/decorators");
|
14
|
+
const todo_events_1 = require("./todo.events");
|
15
|
+
let TodoEventHandler = class TodoEventHandler {
|
16
|
+
handle(event) {
|
17
|
+
console.log('TodoEventHandler', event);
|
18
|
+
console.log('TodoCreatedEvent', event);
|
19
|
+
}
|
20
|
+
};
|
21
|
+
__decorate([
|
22
|
+
(0, decorators_2.OnEvent)('todo.created'),
|
23
|
+
__metadata("design:type", Function),
|
24
|
+
__metadata("design:paramtypes", [todo_events_1.TodoCreatedEvent]),
|
25
|
+
__metadata("design:returntype", void 0)
|
26
|
+
], TodoEventHandler.prototype, "handle", null);
|
27
|
+
TodoEventHandler = __decorate([
|
28
|
+
(0, decorators_1.Component)(),
|
29
|
+
(0, decorators_2.EventListener)()
|
30
|
+
], TodoEventHandler);
|
31
|
+
//# sourceMappingURL=TodoEventHandler.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"TodoEventHandler.js","sourceRoot":"","sources":["../../../src/examples/events/TodoEventHandler.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sDAAiD;AACjD,wDAAgE;AAChE,+CAAgD;AAIhD,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAEpB,MAAM,CAAC,KAAuB;QAC5B,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAA;QACtC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAA;IACxC,CAAC;CACF,CAAA;AAJC;IADC,IAAA,oBAAO,EAAC,cAAc,CAAC;;qCACV,8BAAgB;;8CAG7B;AALG,gBAAgB;IAFrB,IAAA,sBAAS,GAAE;IACX,IAAA,0BAAa,GAAE;GACV,gBAAgB,CAMrB"}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { IEvent } from '../../events/event.types';
|
2
|
+
import './TodoEventHandler';
|
3
|
+
export declare class TodoCreatedEvent implements IEvent {
|
4
|
+
payload: {
|
5
|
+
id: string;
|
6
|
+
text: string;
|
7
|
+
createdAt: Date;
|
8
|
+
};
|
9
|
+
readonly type = "todo.created";
|
10
|
+
constructor(payload: {
|
11
|
+
id: string;
|
12
|
+
text: string;
|
13
|
+
createdAt: Date;
|
14
|
+
});
|
15
|
+
}
|
16
|
+
//# sourceMappingURL=todo.events.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.events.d.ts","sourceRoot":"","sources":["../../../src/examples/events/todo.events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAA;AAGjD,OAAO,oBAAoB,CAAA;AAE3B,qBAAa,gBAAiB,YAAW,MAAM;IAG1B,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,IAAI,CAAA;KAAE;IAFzE,QAAQ,CAAC,IAAI,kBAAiB;gBAEX,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,IAAI,CAAA;KAAE;CAC1E"}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.TodoCreatedEvent = void 0;
|
4
|
+
// This is our strongly-typed event class.
|
5
|
+
require("./TodoEventHandler");
|
6
|
+
class TodoCreatedEvent {
|
7
|
+
constructor(payload) {
|
8
|
+
this.payload = payload;
|
9
|
+
this.type = 'todo.created'; // Unique event identifier
|
10
|
+
}
|
11
|
+
}
|
12
|
+
exports.TodoCreatedEvent = TodoCreatedEvent;
|
13
|
+
//# sourceMappingURL=todo.events.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.events.js","sourceRoot":"","sources":["../../../src/examples/events/todo.events.ts"],"names":[],"mappings":";;;AAEA,0CAA0C;AAC1C,8BAA2B;AAE3B,MAAa,gBAAgB;IAG3B,YAAmB,OAAsD;QAAtD,YAAO,GAAP,OAAO,CAA+C;QAFhE,SAAI,GAAG,cAAc,CAAA,CAAC,0BAA0B;IAEmB,CAAC;CAC9E;AAJD,4CAIC"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAA"}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
require("reflect-metadata");
|
4
|
+
const api_1 = require("../api");
|
5
|
+
const health_controller_1 = require("./controllers/health.controller");
|
6
|
+
const todo_controller_1 = require("./controllers/todo.controller");
|
7
|
+
const component_registry_1 = require("../core/component-registry");
|
8
|
+
const bootstrap_1 = require("../events/bootstrap");
|
9
|
+
const di_container_1 = require("../core/di-container");
|
10
|
+
const todo_service_1 = require("./services/todo.service");
|
11
|
+
const bootstrap_2 = require("../cache/bootstrap");
|
12
|
+
// import { createBootifyApp } from './api'
|
13
|
+
// import { HealthController } from './examples/controllers/health.controller'
|
14
|
+
// import { TodoController } from './examples/controllers/todo.controller'
|
15
|
+
// --- Application Startup ---
|
16
|
+
async function main() {
|
17
|
+
// await intitializeLogging()
|
18
|
+
const allComponents = Array.from(component_registry_1.registeredComponents);
|
19
|
+
await (0, bootstrap_1.bootstrapEventSystem)(allComponents);
|
20
|
+
await (0, bootstrap_2.bootstrapCache)();
|
21
|
+
const { start } = await (0, api_1.createBootifyApp)({
|
22
|
+
controllers: [health_controller_1.HealthController, todo_controller_1.TodoController],
|
23
|
+
enableSwagger: true,
|
24
|
+
port: 3000,
|
25
|
+
});
|
26
|
+
console.log('All components:', di_container_1.container.getRegisteredComponents());
|
27
|
+
const animal = di_container_1.container.resolve('Animal');
|
28
|
+
// console.log(animal)
|
29
|
+
const animalservice = di_container_1.container.resolve(todo_service_1.AnimalService);
|
30
|
+
console.log(animalservice.animal === animalservice.animal1);
|
31
|
+
console.log(animalservice.animal.name);
|
32
|
+
await start();
|
33
|
+
}
|
34
|
+
main();
|
35
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/examples/index.ts"],"names":[],"mappings":";;AAAA,4BAAyB;AACzB,gCAAyC;AACzC,uEAAkE;AAClE,mEAA8D;AAC9D,mEAAiE;AACjE,mDAA0D;AAC1D,uDAAgD;AAChD,0DAA+D;AAC/D,kDAAmD;AAEnD,2CAA2C;AAC3C,8EAA8E;AAC9E,0EAA0E;AAE1E,8BAA8B;AAC9B,KAAK,UAAU,IAAI;IACjB,+BAA+B;IAC/B,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,yCAAoB,CAAC,CAAA;IACtD,MAAM,IAAA,gCAAoB,EAAC,aAAa,CAAC,CAAA;IACzC,MAAM,IAAA,0BAAc,GAAE,CAAA;IACtB,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,sBAAgB,EAAC;QACvC,WAAW,EAAE,CAAC,oCAAgB,EAAE,gCAAc,CAAC;QAC/C,aAAa,EAAE,IAAI;QACnB,IAAI,EAAE,IAAI;KACX,CAAC,CAAA;IAEF,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,wBAAS,CAAC,uBAAuB,EAAE,CAAC,CAAA;IACnE,MAAM,MAAM,GAAG,wBAAS,CAAC,OAAO,CAAS,QAAQ,CAAC,CAAA;IAElD,wBAAwB;IACxB,MAAM,aAAa,GAAkB,wBAAS,CAAC,OAAO,CAAgB,4BAAa,CAAC,CAAA;IACpF,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,KAAK,aAAa,CAAC,OAAO,CAAC,CAAA;IAC3D,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAEtC,MAAM,KAAK,EAAE,CAAA;AACf,CAAC;AAED,IAAI,EAAE,CAAA"}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
export declare class TodoRepository {
|
2
|
+
private todos;
|
3
|
+
private nextId;
|
4
|
+
findAll(): {
|
5
|
+
id: string;
|
6
|
+
text: string;
|
7
|
+
completed: boolean;
|
8
|
+
}[];
|
9
|
+
findById(id: string): {
|
10
|
+
id: string;
|
11
|
+
text: string;
|
12
|
+
completed: boolean;
|
13
|
+
} | undefined;
|
14
|
+
create(text: string): {
|
15
|
+
id: string;
|
16
|
+
text: string;
|
17
|
+
completed: boolean;
|
18
|
+
};
|
19
|
+
}
|
20
|
+
//# sourceMappingURL=todo.repository.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.repository.d.ts","sourceRoot":"","sources":["../../../src/examples/repositories/todo.repository.ts"],"names":[],"mappings":"AAEA,qBACa,cAAc;IACzB,OAAO,CAAC,KAAK,CAA2E;IACxF,OAAO,CAAC,MAAM,CAAI;IAElB,OAAO;YAH0B,MAAM;cAAQ,MAAM;mBAAa,OAAO;;IAOzE,QAAQ,CAAC,EAAE,EAAE,MAAM;YAPc,MAAM;cAAQ,MAAM;mBAAa,OAAO;;IAWzE,MAAM,CAAC,IAAI,EAAE,MAAM;;;;;CAMpB"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
9
|
+
exports.TodoRepository = void 0;
|
10
|
+
const decorators_1 = require("../../core/decorators");
|
11
|
+
let TodoRepository = class TodoRepository {
|
12
|
+
constructor() {
|
13
|
+
this.todos = new Map();
|
14
|
+
this.nextId = 1;
|
15
|
+
}
|
16
|
+
findAll() {
|
17
|
+
return Array.from(this.todos.values());
|
18
|
+
}
|
19
|
+
findById(id) {
|
20
|
+
return this.todos.get(id);
|
21
|
+
}
|
22
|
+
create(text) {
|
23
|
+
const id = (this.nextId++).toString();
|
24
|
+
const todo = { id, text, completed: false };
|
25
|
+
this.todos.set(id, todo);
|
26
|
+
return todo;
|
27
|
+
}
|
28
|
+
};
|
29
|
+
exports.TodoRepository = TodoRepository;
|
30
|
+
exports.TodoRepository = TodoRepository = __decorate([
|
31
|
+
(0, decorators_1.Repository)()
|
32
|
+
], TodoRepository);
|
33
|
+
//# sourceMappingURL=todo.repository.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.repository.js","sourceRoot":"","sources":["../../../src/examples/repositories/todo.repository.ts"],"names":[],"mappings":";;;;;;;;;AAAA,sDAAkD;AAG3C,IAAM,cAAc,GAApB,MAAM,cAAc;IAApB;QACG,UAAK,GAAkE,IAAI,GAAG,EAAE,CAAA;QAChF,WAAM,GAAG,CAAC,CAAA;IAgBpB,CAAC;IAdC,OAAO;QACL,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;IACxC,CAAC;IAED,QAAQ,CAAC,EAAU;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC3B,CAAC;IAED,MAAM,CAAC,IAAY;QACjB,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAA;QACrC,MAAM,IAAI,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;QAC3C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QACxB,OAAO,IAAI,CAAA;IACb,CAAC;CACF,CAAA;AAlBY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,uBAAU,GAAE;GACA,cAAc,CAkB1B"}
|
@@ -0,0 +1,33 @@
|
|
1
|
+
export declare class TodoService {
|
2
|
+
private readonly eventBus;
|
3
|
+
private readonly repository;
|
4
|
+
getAllTodos(): {
|
5
|
+
id: string;
|
6
|
+
text: string;
|
7
|
+
completed: boolean;
|
8
|
+
}[];
|
9
|
+
getTodoById(id: string): {
|
10
|
+
id: string;
|
11
|
+
text: string;
|
12
|
+
completed: boolean;
|
13
|
+
};
|
14
|
+
createTodo(text: string): {
|
15
|
+
id: string;
|
16
|
+
text: string;
|
17
|
+
completed: boolean;
|
18
|
+
};
|
19
|
+
}
|
20
|
+
export interface Animal {
|
21
|
+
name: string;
|
22
|
+
sound(): void;
|
23
|
+
}
|
24
|
+
export declare class Dog implements Animal {
|
25
|
+
name: string;
|
26
|
+
sound(): void;
|
27
|
+
}
|
28
|
+
export declare class AnimalService {
|
29
|
+
readonly animal: Animal;
|
30
|
+
animal1: Animal;
|
31
|
+
constructor(animal: Animal);
|
32
|
+
}
|
33
|
+
//# sourceMappingURL=todo.service.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.service.d.ts","sourceRoot":"","sources":["../../../src/examples/services/todo.service.ts"],"names":[],"mappings":"AAKA,qBACa,WAAW;IAItB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkB;IAG3C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiB;IAE5C,WAAW;;;;;IAIX,WAAW,CAAC,EAAE,EAAE,MAAM;;;;;IAUtB,UAAU,CAAC,IAAI,EAAE,MAAM;;;;;CAKxB;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,IAAI,IAAI,CAAA;CACd;AAED,qBAGa,GAAI,YAAW,MAAM;IAChC,IAAI,EAAE,MAAM,CAAa;IACzB,KAAK,IAAI,IAAI;CAGd;AAED,qBACa,aAAa;aAGyB,MAAM,EAAE,MAAM;IADxD,OAAO,EAAG,MAAM,CAAA;gBAC0B,MAAM,EAAE,MAAM;CAChE"}
|
@@ -0,0 +1,80 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
7
|
+
};
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
10
|
+
};
|
11
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
12
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
13
|
+
};
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
15
|
+
exports.AnimalService = exports.Dog = exports.TodoService = void 0;
|
16
|
+
const decorators_1 = require("../../core/decorators");
|
17
|
+
const event_bus_service_1 = require("../../events/event-bus.service");
|
18
|
+
const todo_events_1 = require("../events/todo.events");
|
19
|
+
const todo_repository_1 = require("../repositories/todo.repository");
|
20
|
+
let TodoService = class TodoService {
|
21
|
+
getAllTodos() {
|
22
|
+
return this.repository.findAll();
|
23
|
+
}
|
24
|
+
getTodoById(id) {
|
25
|
+
const todo = this.repository.findById(id);
|
26
|
+
if (!todo) {
|
27
|
+
const error = new Error('Todo not found');
|
28
|
+
error.statusCode = 404;
|
29
|
+
throw error;
|
30
|
+
}
|
31
|
+
return todo;
|
32
|
+
}
|
33
|
+
createTodo(text) {
|
34
|
+
const newTodo = this.repository.create(text);
|
35
|
+
this.eventBus.emit(new todo_events_1.TodoCreatedEvent({ ...newTodo, createdAt: new Date() }));
|
36
|
+
return newTodo;
|
37
|
+
}
|
38
|
+
};
|
39
|
+
exports.TodoService = TodoService;
|
40
|
+
__decorate([
|
41
|
+
(0, decorators_1.Autowired)(),
|
42
|
+
__metadata("design:type", event_bus_service_1.EventBusService)
|
43
|
+
], TodoService.prototype, "eventBus", void 0);
|
44
|
+
__decorate([
|
45
|
+
(0, decorators_1.Autowired)(),
|
46
|
+
__metadata("design:type", todo_repository_1.TodoRepository)
|
47
|
+
], TodoService.prototype, "repository", void 0);
|
48
|
+
exports.TodoService = TodoService = __decorate([
|
49
|
+
(0, decorators_1.Service)()
|
50
|
+
], TodoService);
|
51
|
+
let Dog = class Dog {
|
52
|
+
constructor() {
|
53
|
+
this.name = 'Good Dog';
|
54
|
+
}
|
55
|
+
sound() {
|
56
|
+
throw new Error('Method not implemented.');
|
57
|
+
}
|
58
|
+
};
|
59
|
+
exports.Dog = Dog;
|
60
|
+
exports.Dog = Dog = __decorate([
|
61
|
+
(0, decorators_1.Component)({
|
62
|
+
bindTo: ['Animal'],
|
63
|
+
})
|
64
|
+
], Dog);
|
65
|
+
let AnimalService = class AnimalService {
|
66
|
+
constructor(animal) {
|
67
|
+
this.animal = animal;
|
68
|
+
}
|
69
|
+
};
|
70
|
+
exports.AnimalService = AnimalService;
|
71
|
+
__decorate([
|
72
|
+
(0, decorators_1.Autowired)('Animal'),
|
73
|
+
__metadata("design:type", Object)
|
74
|
+
], AnimalService.prototype, "animal1", void 0);
|
75
|
+
exports.AnimalService = AnimalService = __decorate([
|
76
|
+
(0, decorators_1.Component)(),
|
77
|
+
__param(0, (0, decorators_1.Autowired)('Animal')),
|
78
|
+
__metadata("design:paramtypes", [Object])
|
79
|
+
], AnimalService);
|
80
|
+
//# sourceMappingURL=todo.service.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"todo.service.js","sourceRoot":"","sources":["../../../src/examples/services/todo.service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,sDAAqE;AACrE,sEAAgE;AAChE,uDAAwD;AACxD,qEAAgE;AAGzD,IAAM,WAAW,GAAjB,MAAM,WAAW;IAStB,WAAW;QACT,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAA;IAClC,CAAC;IAED,WAAW,CAAC,EAAU;QACpB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,KAAK,GAAQ,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;YAC9C,KAAK,CAAC,UAAU,GAAG,GAAG,CAAA;YACtB,MAAM,KAAK,CAAA;QACb,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC5C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,8BAAgB,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,CAAA;QAC/E,OAAO,OAAO,CAAA;IAChB,CAAC;CACF,CAAA;AA5BY,kCAAW;AAIL;IADhB,IAAA,sBAAS,GAAE;8BACgB,mCAAe;6CAAA;AAG1B;IADhB,IAAA,sBAAS,GAAE;8BACkB,gCAAc;+CAAA;sBAPjC,WAAW;IADvB,IAAA,oBAAO,GAAE;GACG,WAAW,CA4BvB;AAUM,IAAM,GAAG,GAAT,MAAM,GAAG;IAAT;QACL,SAAI,GAAW,UAAU,CAAA;IAI3B,CAAC;IAHC,KAAK;QACH,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;IAC5C,CAAC;CACF,CAAA;AALY,kBAAG;cAAH,GAAG;IAHf,IAAA,sBAAS,EAAC;QACT,MAAM,EAAE,CAAC,QAAQ,CAAC;KACnB,CAAC;GACW,GAAG,CAKf;AAGM,IAAM,aAAa,GAAnB,MAAM,aAAa;IAGxB,YAAiD,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;CACpE,CAAA;AAJY,sCAAa;AAEjB;IADN,IAAA,sBAAS,EAAC,QAAQ,CAAC;;8CACG;wBAFZ,aAAa;IADzB,IAAA,sBAAS,GAAE;IAIG,WAAA,IAAA,sBAAS,EAAC,QAAQ,CAAC,CAAA;;GAHrB,aAAa,CAIzB"}
|