{"version":3,"sources":["../lib/grpc-service.ts","../lib/config.ts"],"sourcesContent":["import { IService, logger } from \"fly-boot\";\nimport { GrpcService } from \"./service.ts\";\nimport { Server, ServerCredentials } from \"@grpc/grpc-js\";\nimport grpcConfig from \"./config.ts\";\n\n\nclass GrpcServerService implements IService {\n    private readonly server: Server;\n    constructor() {\n        this.server = new Server();\n    }\n\n    addServices(services: Array<GrpcService>) {\n        for (const { service, mapper } of services) {\n            this.server.addService(service, mapper);\n        }\n    }\n\n    async listen() {\n        this.server.bindAsync(`${grpcConfig.host}:${grpcConfig.port}`, ServerCredentials.createInsecure(), (err, port) => {\n            logger.success('grpc listening', `${grpcConfig.host}:${grpcConfig.port}`)\n        });\n    }\n}\n\nexport default new GrpcServerService()","import { ConfigLoader } from \"fly-boot\";\n\nexport class GrpcConfigInterface {\n    path: string\n    host: string\n    port: number\n}\n\n/**\n * 服务配置\n */\nexport class GrpcConfig extends GrpcConfigInterface {\n    constructor(options?: any) {\n        super();\n        Object.assign(this, options)\n    }\n}\n\nexport default ConfigLoader.load(GrpcConfig, \"grpc.yml\")"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,mBAAiC;AAEjC,qBAA0C;;;ACF1C,sBAA6B;AAEtB,IAAM,sBAAN,MAA0B;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AACJ;AAKO,IAAM,aAAN,cAAyB,oBAAoB;AAAA,EAChD,YAAY,SAAe;AACvB,UAAM;AACN,WAAO,OAAO,MAAM,OAAO;AAAA,EAC/B;AACJ;AAEA,IAAO,iBAAQ,6BAAa,KAAK,YAAY,UAAU;;;ADZvD,IAAM,oBAAN,MAA4C;AAAA,EACvB;AAAA,EACjB,cAAc;AACV,SAAK,SAAS,IAAI,sBAAO;AAAA,EAC7B;AAAA,EAEA,YAAY,UAA8B;AACtC,eAAW,EAAE,SAAS,OAAO,KAAK,UAAU;AACxC,WAAK,OAAO,WAAW,SAAS,MAAM;AAAA,IAC1C;AAAA,EACJ;AAAA,EAEA,MAAM,SAAS;AACX,SAAK,OAAO,UAAU,GAAG,eAAW,IAAI,IAAI,eAAW,IAAI,IAAI,iCAAkB,eAAe,GAAG,CAAC,KAAK,SAAS;AAC9G,8BAAO,QAAQ,kBAAkB,GAAG,eAAW,IAAI,IAAI,eAAW,IAAI,EAAE;AAAA,IAC5E,CAAC;AAAA,EACL;AACJ;AAEA,IAAO,uBAAQ,IAAI,kBAAkB;","names":["import_fly_boot"]}