@arturwojnar/hermes-postgresql
Version:
Production-Ready TypeScript Outbox Pattern for PostgreSQL
36 lines • 1.18 kB
JavaScript
var MessageType;
(function (MessageType) {
MessageType["Begin"] = "B";
MessageType["Insert"] = "I";
MessageType["Commit"] = "C";
MessageType["Other"] = "Other";
})(MessageType || (MessageType = {}));
var Bytes;
(function (Bytes) {
Bytes[Bytes["Int8"] = 1] = "Int8";
Bytes[Bytes["Int16"] = 2] = "Int16";
Bytes[Bytes["Int32"] = 4] = "Int32";
Bytes[Bytes["Int64"] = 8] = "Int64";
})(Bytes || (Bytes = {}));
var TopLevelType;
(function (TopLevelType) {
TopLevelType["XLogData"] = "w";
TopLevelType["PrimaryKeepaliveMessage"] = "k";
})(TopLevelType || (TopLevelType = {}));
const TopLevelTypeValues = Object.values(TopLevelType);
const MessageTypeValues = Object.values(MessageType);
const isTopLevelType = (char) => TopLevelTypeValues.includes(char);
const parseTopLevelType = (char) => {
if (!isTopLevelType(char)) {
throw new Error(`INTERNAL_ERROR`);
}
return char;
};
const parseMessageType = (char) => {
if (MessageTypeValues.includes(char)) {
return char;
}
return MessageType.Other;
};
export { Bytes, MessageType, parseMessageType, parseTopLevelType, TopLevelType, };
//# sourceMappingURL=types.js.map