{"_id":"@bung87/grpc-promise-ts-generator-plugin","_rev":"2-0499228aaa096a66adc8b78a40aaa21e","name":"@bung87/grpc-promise-ts-generator-plugin","dist-tags":{"latest":"0.1.6"},"versions":{"0.1.5":{"author":{"name":"David Walsh"},"bin":{"grpc-promise-ts-generator-plugin":"bin/grpc-promise-ts-generator-plugin"},"bugs":{"url":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin/issues"},"dependencies":{"@grpc/grpc-js":"^1.0.0","@grpc/proto-loader":"^0.5.4","google-protobuf":"3.5.0","handlebars":"4.7.4","handlebars-helpers":"0.10.0","import-sort-parser-typescript":"^6.0.0","prettier":"^2.0.4"},"description":"Generate TypeScript definitions for type safe gRPC with a modern API","devDependencies":{"@types/google-protobuf":"3.2.7","@types/jest":"^25.2.1","@types/node":"12.12.6","@types/prettier":"^2.0.0","@types/underscore":"^1.9.4","@typescript-eslint/eslint-plugin":"^2.28.0","@typescript-eslint/parser":"^2.28.0","eslint":"^6.4.0","eslint-config-prettier":"^6.10.0","eslint-plugin-prettier":"^3.1.2","grpc-tools":"^1.8.1","jest":"^25.4.0","jest-extended":"^0.11.5","ts-jest":"^25.4.0","typescript":"^3.8.3","underscore":"^1.10.2"},"homepage":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin#readme","keywords":["grpc-promise-ts-generator-plugin","gRPC","promise","promises","protobuf","protoc","TypeScript"],"license":"MIT","main":"build/index.js","name":"@bung87/grpc-promise-ts-generator-plugin","repository":{"type":"git","url":"git+https://github.com/rhinodavid/grpc-promise-ts-generator-plugin.git"},"scripts":{"build":"tsc -p . && cp -r src/lib/template build/lib","lint":"eslint .","postversion":"git push && git push --tags","prepare":"","prepublishOnly":"eslint . && yarn build","test":"jest"},"publishConfig":{"access":"public"},"version":"0.1.5","gitHead":"b67341dc723fb7f3d4b066e0bd2f007e6a6fdc04","_id":"@bung87/grpc-promise-ts-generator-plugin@0.1.5","_nodeVersion":"14.17.4","_npmVersion":"7.20.5","dist":{"integrity":"sha512-jXgtejTDhB6lawGWXAHLp9SNDUEwxGfn8NOsEdtM1ObRwdUOkwDcglp0fSmlYHc/h7dGOK6nD9n6Ejp50/hkdQ==","shasum":"19890cf88fb1523484d80aca22cbd02f31ef9dad","tarball":"https://registry.npmjs.org/@bung87/grpc-promise-ts-generator-plugin/-/grpc-promise-ts-generator-plugin-0.1.5.tgz","fileCount":40,"unpackedSize":94351,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnRWECRA9TVsSAnZWagAAQiwP/irIIzjXyysifeX1k3FP\nC3eevMPKn+Higva70ruD0BkUaZebNDOZdAwscTRnrE6dKzR569hL3u9/DhyW\nXHgDzIA4FViLkV8iRWFDWB7mKwI46MyRfzrpM6FCzqTCg5Fiw8kyX1j564Q0\nhq6eRMeOuHtxdpIkhn9qoZLJNItX4uaz8zML40Blm7AcTKBADnhP/eZ2GNsK\nE5Zkk9CvaSkYyNuiPdwGKPootp+0x2GcpXSskLfQSRIuOMj60l7pl7sf1lIr\nuDhHx9P63HDE7LRF8hJr3AFlYly7eXc96pqn7qgaNhUAhAjiTwFzJB8UCGVy\nPFPL6tOp3smG7cIMd3kFlADAs/jj2TZemvK+hX8wledBXqMkMtq9ft2IzzoR\nc8g9kTp+4t6FutAV8A0ngcug9BGS2JzyqqtPxzdIguINtPoxQwy73W2w6xzD\n59flpslOe1pFDqsCHIhUJkZ+MVLWAqwi5A64CtqohSyGp1KDds8uUdyXT9Kn\nt2I167R9iTntCib2M8eUI6YSw+V1JelXv7YdGvazIjxzQySaK9HCnjrEr3Ha\nIcaM3fsUl1uUz0nvA/+iQJ9WJTDBnyisObKu2oS/ewEEKccPWR7iWP7pSiHm\nI08gQmMZ+SsUJy5B7w7sLd6Ep/YxZu7PXrSDVHZI43+F8fxrHrYJbRTw6bnI\nK9aC\r\n=s9qp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHBp+tR6j/oQ/g9SGSdY0CYW8uUW0ONa0yPN141Zzo+DAiEAxjorTRJC3P6g5o0+8l/aCNIe3hYuT50q2+3aAfCF7no="}]},"_npmUser":{"name":"bung87","email":"crc32@qq.com"},"directories":{},"maintainers":[{"name":"bung87","email":"crc32@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grpc-promise-ts-generator-plugin_0.1.5_1637684612325_0.24693695739356536"},"_hasShrinkwrap":false},"0.1.6":{"author":{"name":"David Walsh"},"bin":{"grpc-promise-ts-generator-plugin":"bin/grpc-promise-ts-generator-plugin"},"bugs":{"url":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin/issues"},"dependencies":{"@grpc/grpc-js":"^1.0.0","@grpc/proto-loader":"^0.5.4","google-protobuf":"3.5.0","handlebars":"4.7.4","handlebars-helpers":"0.10.0","import-sort-parser-typescript":"^6.0.0","prettier":"^2.0.4"},"description":"Generate TypeScript definitions for type safe gRPC with a modern API","devDependencies":{"@types/google-protobuf":"3.2.7","@types/jest":"^25.2.1","@types/node":"12.12.6","@types/prettier":"^2.0.0","@types/underscore":"^1.9.4","@typescript-eslint/eslint-plugin":"^2.28.0","@typescript-eslint/parser":"^2.28.0","eslint":"^6.4.0","eslint-config-prettier":"^6.10.0","eslint-plugin-prettier":"^3.1.2","grpc-tools":"^1.8.1","jest":"^25.4.0","jest-extended":"^0.11.5","ts-jest":"^25.4.0","typescript":"^3.8.3","underscore":"^1.10.2"},"homepage":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin#readme","keywords":["grpc-promise-ts-generator-plugin","gRPC","promise","promises","protobuf","protoc","TypeScript"],"license":"MIT","main":"build/index.js","name":"@bung87/grpc-promise-ts-generator-plugin","repository":{"type":"git","url":"git+https://github.com/rhinodavid/grpc-promise-ts-generator-plugin.git"},"scripts":{"build":"tsc -p . && cp -r src/lib/template build/lib","lint":"eslint .","postversion":"git push && git push --tags","prepare":"","prepublishOnly":"eslint . && yarn build","test":"jest"},"publishConfig":{"access":"public"},"version":"0.1.6","gitHead":"0c556438a64e822cc55e97feaf646cfabe1752ef","_id":"@bung87/grpc-promise-ts-generator-plugin@0.1.6","_nodeVersion":"14.17.4","_npmVersion":"7.20.5","dist":{"integrity":"sha512-jWe7q3C3McwPUjt1QBoSwweqcxIuD6uwo/r+yIMIw3QeFaKlGwmRB/UT0D9NXY22Z2UwliFtOrlGQXrctiaDaA==","shasum":"08d18ea8aacf6ef8d6db13169af7869e02965820","tarball":"https://registry.npmjs.org/@bung87/grpc-promise-ts-generator-plugin/-/grpc-promise-ts-generator-plugin-0.1.6.tgz","fileCount":40,"unpackedSize":94359,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnR1kCRA9TVsSAnZWagAAVoYP/Rmp3SCDXiv6pZBajDY/\nhYyl0CKH++oro7yxtQ8mGXoHJIH6dq76tuMXMEm/eKfCjDl7V7PeVCM0Ru8G\nQTg/EXzU8DgtThosbp+m0pUJKVRRLGnm8y+1jqlHK/qf9N1Do2dOU4RFj5Lu\n6kMy/tiqIwi5dSVaFe599bx3zUaNoUQNnBj6u0zhlWzExMVKjGUHgw9u00RP\nNq++LOg2ClLzP7I7LHfPCSETIFJZPFOw6iDoDgirdAOOpXr8vqXpGaz6Ifn+\nwsNjcm+LG69d+rDAgZh0hBtguCf5jrXPYyCVoyYJOgb4J85n8PkAFJNgOBNC\nPPjZTsiqMVcke7wMMPy4ELaTwDfSuW/X/MPtsuIXk6kMDfDoQGUN5ZeZquXu\nIRaLXC/VcLkpyeLqs188XDOHqSAd6lMdWheyCCQCw76TL5cqIzaxrETddpgC\ntSBlxQb9wuuBRb9jpJBXttNIStVZP7Av0/PcPOMUgVSkVOpcPC99Zgs5CEJQ\nnANYpPeOzQ3sFjCfvKfNl2xEGBGUTtWwpKyd4s/2aytvbknJH6BsHd0D4BWx\ntGz+Gl7vs6bTSTKFBtJDuETHDQ8XNnAZ4N+KbF8Fb8SR8BdhEWzFTcMVcCk+\nkRbXLzo9SrcDsBP3TZkQTxfuNyJP2cv5KSK5SA0AP3yrqwMminPu3gJnOXJ9\nqmSl\r\n=oEzW\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF5CzBQVV05FVB7Dtw+zxWMerTwLaNCSLMfy6YlDbVuPAiEAvtigGHkaUkG64qiVgTr+27qKpDk1Bfk1SVjSYODNtmo="}]},"_npmUser":{"name":"bung87","email":"crc32@qq.com"},"directories":{},"maintainers":[{"name":"bung87","email":"crc32@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/grpc-promise-ts-generator-plugin_0.1.6_1637686628175_0.7925169173841529"},"_hasShrinkwrap":false}},"time":{"created":"2021-11-23T16:23:32.270Z","0.1.5":"2021-11-23T16:23:32.557Z","modified":"2022-04-04T21:06:09.336Z","0.1.6":"2021-11-23T16:57:08.324Z"},"maintainers":[{"name":"bung87","email":"crc32@qq.com"}],"description":"Generate TypeScript definitions for type safe gRPC with a modern API","homepage":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin#readme","keywords":["grpc-promise-ts-generator-plugin","gRPC","promise","promises","protobuf","protoc","TypeScript"],"repository":{"type":"git","url":"git+https://github.com/rhinodavid/grpc-promise-ts-generator-plugin.git"},"author":{"name":"David Walsh"},"bugs":{"url":"https://github.com/rhinodavid/grpc-promise-ts-generator-plugin/issues"},"license":"MIT","readme":"# Generate Typescript definitions for type safe gRPC with a modern API\n\n_A fork of [`grpc_tools_node_protoc_ts`](https://github.com/agreatfool/grpc_tools_node_protoc_ts)_\n\n> This package is under active development and feedback is appreciated\n\n## What is this?\n\nThis package generates Typescript definitions for the Javascript\nprotos produced by the (poorly documented) [`grpc-tools` npm package](https://www.npmjs.com/package/grpc-tools).\n\n## Why would I use this?\n\nIf you want to use [protos](https://developers.google.com/protocol-buffers) and [gRPC](https://grpc.io/) in Javascript code,\nyou could use the [`@grpc/proto-loader`](https://github.com/grpc/grpc-node/tree/master/packages/proto-loader) package.\nIt parses the protos to Javacript at runtime. If you need flexibily, this may be the best option.\nHowever, if you've gotten this far, you're probably looking for type safety, and for that we need to generate code.\n\n`grpc-tools` includes a binary (`protoc`) and plugin to generate Node implementations of protos, and this package is a plugin for `protoc` which generates Typescript definitions for those implementations.\n\n## How do I use this?\n\n**Follow the [example app](https://github.com/rhinodavid/grpc-promise-ts-example-app)!**\n\n## Promises\n\nThe Javascript protobuf implementations generated by `grpc-tools` use a callback pattern. Unfortunately, this code doesn't fit in well with modern `async`/`await` code.\n\nTo get a `Promise` API you may use the [`grpc-promise-ts`](https://github.com/rhinodavid/grpc-promise-ts) package. It's still under development, but currently can convert the gRPC client produced by `grpc-tools` into a client with a `Promise` API. The Typescript definitions produced by this package include the Promise Client (optionally they can be supressed).\n","readmeFilename":"README.md"}