{"version":3,"file":"make-transport.mjs","names":[],"sources":["../../../src/client/transport/make-transport.ts"],"sourcesContent":["import type { Transport } from \"./transport\";\nimport type { ExpandedTransportConfiguration } from \"~/config/expanded\";\nimport { DuplexTransport } from \"./duplex-transport\";\nimport { TcpTransport } from \"./tcp-transport\";\nimport { WebSocketTransport } from \"./websocket-transport\";\n\nexport function makeTransport(\n  config: ExpandedTransportConfiguration,\n): Transport {\n  switch (config.type) {\n    case \"tcp\": {\n      return new TcpTransport(config);\n    }\n    case \"duplex\": {\n      return new DuplexTransport(config);\n    }\n    case \"websocket\": {\n      return new WebSocketTransport(config);\n    }\n    default: {\n      throw new Error(\"Unknown transport type\");\n    }\n  }\n}\n"],"mappings":";;;;AAMA,SAAgB,cACd,QACW;AACX,SAAQ,OAAO,MAAf;EACE,KAAK,MACH,QAAO,IAAI,aAAa,OAAO;EAEjC,KAAK,SACH,QAAO,IAAI,gBAAgB,OAAO;EAEpC,KAAK,YACH,QAAO,IAAI,mBAAmB,OAAO;EAEvC,QACE,OAAM,IAAI,MAAM,yBAAyB"}