fase(16): integrations module
This commit is contained in:
22
dist/modules/integrations/domain/entities/Integration.js
vendored
Normal file
22
dist/modules/integrations/domain/entities/Integration.js
vendored
Normal file
@@ -0,0 +1,22 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.Integration = void 0;
|
||||
const Entity_1 = require("../../../../shared/domain/Entity");
|
||||
const UniqueId_1 = require("../../../../shared/domain/UniqueId");
|
||||
class Integration extends Entity_1.Entity {
|
||||
static create(props, id) {
|
||||
return new Integration({ ...props, enabled: true, createdAt: new Date() }, id ?? UniqueId_1.UniqueId.create());
|
||||
}
|
||||
static reconstitute(props, id) {
|
||||
return new Integration(props, id);
|
||||
}
|
||||
get name() { return this.props.name; }
|
||||
get type() { return this.props.type; }
|
||||
get enabled() { return this.props.enabled; }
|
||||
get config() { return this.props.config; }
|
||||
get createdAt() { return this.props.createdAt; }
|
||||
enable() { this.props.enabled = true; }
|
||||
disable() { this.props.enabled = false; }
|
||||
updateConfig(config) { this.props.config = config; }
|
||||
}
|
||||
exports.Integration = Integration;
|
||||
Reference in New Issue
Block a user