@microsoft/omnichannel-chat-sdk
Version:
Microsoft Omnichannel Chat SDK
46 lines • 1.92 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MessagePrinterFactory = exports.PrinterType = void 0;
var OmnichannelMessagePrinter_1 = require("./OmnichannelMessagePrinter");
var PollingMessagePrinter_1 = require("./PollingMessagePrinter");
var WebsocketMessagePrinter_1 = require("./WebsocketMessagePrinter");
var PrinterType;
(function (PrinterType) {
PrinterType["Polling"] = "Polling";
PrinterType["WebSocket"] = "WebSocket";
PrinterType["Omnichannel"] = "Rest";
})(PrinterType || (exports.PrinterType = PrinterType = {}));
var MessagePrinterFactory = /** @class */ (function () {
function MessagePrinterFactory() {
}
MessagePrinterFactory.getPrinter = function (printerType) {
switch (printerType) {
case PrinterType.Polling:
return PollingMessagePrinter_1.PollingMessagePrinter;
case PrinterType.WebSocket:
return WebsocketMessagePrinter_1.WebSocketMessagePrinter;
case PrinterType.Omnichannel:
return OmnichannelMessagePrinter_1.OmnichannelMessagePrinter;
default:
throw new Error("Invalid printer type");
}
};
var _a;
_a = MessagePrinterFactory;
MessagePrinterFactory.printifyMessage = function (message, printerType) {
var printer = _a.getPrinter(printerType);
switch (printerType) {
case PrinterType.Polling:
return printer.printify(message);
case PrinterType.WebSocket:
return printer.printify(message);
case PrinterType.Omnichannel:
return printer.printify(message);
default:
throw new Error("Invalid printer type");
}
};
return MessagePrinterFactory;
}());
exports.MessagePrinterFactory = MessagePrinterFactory;
//# sourceMappingURL=MessagePrinterFactory.js.map