| "use strict"; |
| Object.defineProperty(exports, "__esModule", { value: true }); |
| exports.protocol = exports.Transport = exports.Socket = exports.uServer = exports.parser = exports.attach = exports.listen = exports.transports = exports.Server = void 0; |
| const http_1 = require("http"); |
| const server_1 = require("./server"); |
| Object.defineProperty(exports, "Server", { enumerable: true, get: function () { return server_1.Server; } }); |
| const index_1 = require("./transports/index"); |
| exports.transports = index_1.default; |
| const parser = require("engine.io-parser"); |
| exports.parser = parser; |
| var userver_1 = require("./userver"); |
| Object.defineProperty(exports, "uServer", { enumerable: true, get: function () { return userver_1.uServer; } }); |
| var socket_1 = require("./socket"); |
| Object.defineProperty(exports, "Socket", { enumerable: true, get: function () { return socket_1.Socket; } }); |
| var transport_1 = require("./transport"); |
| Object.defineProperty(exports, "Transport", { enumerable: true, get: function () { return transport_1.Transport; } }); |
| exports.protocol = parser.protocol; |
| /** |
| * Creates an http.Server exclusively used for WS upgrades. |
| * |
| * @param {Number} port |
| * @param {Function} callback |
| * @param {Object} options |
| * @return {Server} websocket.io server |
| * @api public |
| */ |
| function listen(port, options, fn) { |
| if ("function" === typeof options) { |
| fn = options; |
| options = {}; |
| } |
| const server = (0, http_1.createServer)(function (req, res) { |
| res.writeHead(501); |
| res.end("Not Implemented"); |
| }); |
| // create engine server |
| const engine = attach(server, options); |
| engine.httpServer = server; |
| server.listen(port, fn); |
| return engine; |
| } |
| exports.listen = listen; |
| /** |
| * Captures upgrade requests for a http.Server. |
| * |
| * @param {http.Server} server |
| * @param {Object} options |
| * @return {Server} engine server |
| * @api public |
| */ |
| function attach(server, options) { |
| const engine = new server_1.Server(options); |
| engine.attach(server, options); |
| return engine; |
| } |
| exports.attach = attach; |