22 lines
793 B
JavaScript
22 lines
793 B
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.SessionStatus = void 0;
|
|
const ValueObject_1 = require("../../../../shared/domain/ValueObject");
|
|
const Result_1 = require("../../../../shared/domain/Result");
|
|
const VALID_STATUSES = ['running', 'completed', 'failed', 'stopped'];
|
|
class SessionStatus extends ValueObject_1.ValueObject {
|
|
constructor(props) {
|
|
super(props);
|
|
}
|
|
static create(val) {
|
|
if (!VALID_STATUSES.includes(val)) {
|
|
return (0, Result_1.Err)(`Invalid session status: "${val}". Must be one of: ${VALID_STATUSES.join(', ')}`);
|
|
}
|
|
return (0, Result_1.Ok)(new SessionStatus({ value: val }));
|
|
}
|
|
getValue() {
|
|
return this.props.value;
|
|
}
|
|
}
|
|
exports.SessionStatus = SessionStatus;
|