api: Update js + grpc-web dependencies + build in nix-shell.

This commit is contained in:
Orne Brocaar 2024-04-01 11:22:02 +01:00
parent be0a9f9497
commit d970b725ab
12 changed files with 78 additions and 114 deletions

View File

@ -1,12 +0,0 @@
FROM node:19
ENV PROJECT_PATH=/chirpstack/api
RUN apt update && apt install -y protobuf-compiler libprotobuf-dev git bash
RUN git clone https://github.com/googleapis/googleapis.git /googleapis
ADD https://github.com/grpc/grpc-web/releases/download/1.4.2/protoc-gen-grpc-web-1.4.2-linux-x86_64 /usr/bin/protoc-gen-grpc-web
RUN chmod +x /usr/bin/protoc-gen-grpc-web
RUN mkdir -p $PROJECT_PATH
WORKDIR $PROJECT_PATH

9
api/Dockerfile-js vendored
View File

@ -1,9 +0,0 @@
FROM node:19
ENV PROJECT_PATH=/chirpstack/api
RUN apt update && apt install -y protobuf-compiler libprotobuf-dev git bash
RUN git clone https://github.com/googleapis/googleapis.git /googleapis
RUN mkdir -p $PROJECT_PATH
WORKDIR $PROJECT_PATH

4
api/Makefile vendored
View File

@ -7,13 +7,13 @@ rust:
docker compose run --rm chirpstack-api-rust docker compose run --rm chirpstack-api-rust
grpc-web: grpc-web:
docker compose run --rm chirpstack-api-grpc-web cd grpc-web && make
go: go:
cd go && make cd go && make
js: js:
docker compose run --rm chirpstack-api-js cd js && make
python: python:
docker compose run --rm chirpstack-api-python docker compose run --rm chirpstack-api-python

View File

@ -7,20 +7,6 @@ services:
command: bash -c "cd rust && make all" command: bash -c "cd rust && make all"
volumes: volumes:
- ./:/chirpstack/api - ./:/chirpstack/api
chirpstack-api-grpc-web:
build:
context: .
dockerfile: Dockerfile-grpc-web
command: bash -c "cd grpc-web && make all"
volumes:
- ./:/chirpstack/api
chirpstack-api-js:
build:
context: .
dockerfile: Dockerfile-js
command: bash -c "cd js && make all"
volumes:
- ./:/chirpstack/api
chirpstack-api-python: chirpstack-api-python:
build: build:
context: . context: .

32
api/grpc-web/Makefile vendored
View File

@ -1,6 +1,8 @@
.PHONY: common api google-api .PHONY: common api google-api
PROTOC_ARGS := -I=/googleapis -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:.
PROTOC_PATH := ./node_modules/grpc-tools/bin/protoc
PROTOC_ARGS := -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:.
all: requirements common gw api integration google-api all: requirements common gw api integration google-api
@ -9,29 +11,29 @@ requirements:
common: common:
mkdir -p common mkdir -p common
protoc $(PROTOC_ARGS) ../proto/common/common.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/common/common.proto
gw: gw:
mkdir -p gw mkdir -p gw
protoc $(PROTOC_ARGS) ../proto/gw/gw.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/gw/gw.proto
api: api:
mkdir -p api mkdir -p api
protoc $(PROTOC_ARGS) ../proto/api/internal.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/internal.proto
protoc $(PROTOC_ARGS) ../proto/api/user.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/user.proto
protoc $(PROTOC_ARGS) ../proto/api/tenant.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/tenant.proto
protoc $(PROTOC_ARGS) ../proto/api/application.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/application.proto
protoc $(PROTOC_ARGS) ../proto/api/device_profile.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/device_profile.proto
protoc $(PROTOC_ARGS) ../proto/api/device_profile_template.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/device_profile_template.proto
protoc $(PROTOC_ARGS) ../proto/api/device.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/device.proto
protoc $(PROTOC_ARGS) ../proto/api/gateway.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/gateway.proto
protoc $(PROTOC_ARGS) ../proto/api/multicast_group.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/multicast_group.proto
protoc $(PROTOC_ARGS) ../proto/api/relay.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/api/relay.proto
integration: integration:
mkdir -p integration mkdir -p integration
protoc $(PROTOC_ARGS) ../proto/integration/integration.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/integration/integration.proto
google-api: google-api:
protoc $(PROTOC_ARGS) /googleapis/google/api/*.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/google/api/*.proto

View File

@ -9,8 +9,8 @@
"typescript": "^5.1.6" "typescript": "^5.1.6"
}, },
"dependencies": { "dependencies": {
"@types/google-protobuf": "^3.15.6", "@types/google-protobuf": "^3.15.12",
"google-protobuf": "^3.21.2", "google-protobuf": "^3.21.2",
"grpc-web": "^1.4.2" "grpc-web": "^1.5.0"
} }
} }

View File

@ -17,10 +17,10 @@
semver "^7.3.5" semver "^7.3.5"
tar "^6.1.11" tar "^6.1.11"
"@types/google-protobuf@^3.15.6": "@types/google-protobuf@^3.15.12":
version "3.15.6" version "3.15.12"
resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.6.tgz#674a69493ef2c849b95eafe69167ea59079eb504" resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.12.tgz#eb2ba0eddd65712211a2b455dc6071d665ccf49b"
integrity sha512-pYVNNJ+winC4aek+lZp93sIKxnXt5qMkuKmaqS3WGuTq0Bw1ZDYNBgzG5kkdtwcv+GmYJGo3yEg6z2cKKAiEdw== integrity sha512-40um9QqwHjRS92qnOaDpL7RmDK15NuZYo9HihiJRbYkMQZlWnuH8AdvbMy8/o6lgLmKbDUKa+OALCltHdbOTpQ==
abbrev@1: abbrev@1:
version "1.1.1" version "1.1.1"
@ -158,10 +158,10 @@ grpc-tools@^1.12.4:
dependencies: dependencies:
"@mapbox/node-pre-gyp" "^1.0.5" "@mapbox/node-pre-gyp" "^1.0.5"
grpc-web@^1.4.2: grpc-web@^1.5.0:
version "1.4.2" version "1.5.0"
resolved "https://registry.yarnpkg.com/grpc-web/-/grpc-web-1.4.2.tgz#86995f76471ce6b2119106ec26f909b7b69e7d43" resolved "https://registry.yarnpkg.com/grpc-web/-/grpc-web-1.5.0.tgz#154e4007ab59a94bf7726b87ef6c5bd8815ecf6e"
integrity sha512-gUxWq42l5ldaRplcKb4Pw5O4XBONWZgz3vxIIXnfIeJj8Jc3wYiq2O4c9xzx/NGbbPEej4rhI62C9eTENwLGNw== integrity sha512-y1tS3BBIoiVSzKTDF3Hm7E8hV2n7YY7pO0Uo7depfWJqKzWE+SKr0jvHNIJsJJYILQlpYShpi/DRJJMbosgDMQ==
has-unicode@^2.0.1: has-unicode@^2.0.1:
version "2.0.1" version "2.0.1"
@ -377,9 +377,9 @@ ts-protoc-gen@^0.15.0:
google-protobuf "^3.15.5" google-protobuf "^3.15.5"
typescript@^5.1.6: typescript@^5.1.6:
version "5.1.6" version "5.4.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.1.6.tgz#02f8ac202b6dad2c0dd5e0913745b47a37998274" resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.4.3.tgz#5c6fedd4c87bee01cd7a528a30145521f8e0feff"
integrity sha512-zaWCozRZ6DLEWAWFrVDz1H6FVXzUSfTy5FUMWsQlU8Ym5JP9eO4xkTIROFCQvhQf61z6O/G6ugw3SgAnvvm+HA== integrity sha512-KrPd3PKaCLr78MalgiwJnA25Nm8HAmdwN3mYUYZgG/wizIo9EainNVQI9/yDavtVFRN2h3k8uf3GLHuhDMgEHg==
util-deprecate@^1.0.1: util-deprecate@^1.0.1:
version "1.0.2" version "1.0.2"

38
api/js/Makefile vendored
View File

@ -3,7 +3,7 @@
PROTOC_PATH := ./node_modules/grpc-tools/bin/protoc PROTOC_PATH := ./node_modules/grpc-tools/bin/protoc
PROTOC_GEN_TS_PATH := ./node_modules/.bin/protoc-gen-ts PROTOC_GEN_TS_PATH := ./node_modules/.bin/protoc-gen-ts
PROTOC_GEN_GRPC_PATH := ./node_modules/.bin/grpc_tools_node_protoc_plugin PROTOC_GEN_GRPC_PATH := ./node_modules/.bin/grpc_tools_node_protoc_plugin
PROTOC_ARGS := -I=/googleapis -I=../proto --plugin=protoc-gen-ts=$(PROTOC_GEN_TS_PATH) --plugin=protoc-gen-grpc=$(PROTOC_GEN_GRPC_PATH) --js_out=import_style=commonjs,binary:. --ts_out=service=grpc-node,mode=grpc-js:. PROTOC_ARGS := -I=../proto --plugin=protoc-gen-ts=$(PROTOC_GEN_TS_PATH) --plugin=protoc-gen-grpc=$(PROTOC_GEN_GRPC_PATH) --js_out=import_style=commonjs,binary:. --ts_out=service=grpc-node,mode=grpc-js:.
PROTOC_GRPC_ARGS := $(PROTOC_ARGS) --grpc_out=grpc_js:. PROTOC_GRPC_ARGS := $(PROTOC_ARGS) --grpc_out=grpc_js:.
all: requirements common gw api integration stream google-api all: requirements common gw api integration stream google-api
@ -12,31 +12,31 @@ requirements:
yarn install yarn install
common: common:
protoc $(PROTOC_ARGS) ../proto/common/common.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/common/common.proto
gw: gw:
protoc $(PROTOC_ARGS) ../proto/gw/gw.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/gw/gw.proto
api: api:
protoc ${PROTOC_GRPC_ARGS} ../proto/api/internal.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/internal.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/user.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/user.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/tenant.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/tenant.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/application.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/application.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device_profile.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/device_profile.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device_profile_template.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/device_profile_template.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/device.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/device.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/gateway.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/gateway.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/multicast_group.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/multicast_group.proto
protoc ${PROTOC_GRPC_ARGS} ../proto/api/relay.proto $(PROTOC_PATH) ${PROTOC_GRPC_ARGS} ../proto/api/relay.proto
integration: integration:
protoc ${PROTOC_ARGS} ../proto/integration/integration.proto $(PROTOC_PATH) ${PROTOC_ARGS} ../proto/integration/integration.proto
stream: stream:
protoc ${PROTOC_ARGS} ../proto/stream/meta.proto $(PROTOC_PATH) ${PROTOC_ARGS} ../proto/stream/meta.proto
protoc ${PROTOC_ARGS} ../proto/stream/frame.proto $(PROTOC_PATH) ${PROTOC_ARGS} ../proto/stream/frame.proto
protoc ${PROTOC_ARGS} ../proto/stream/api_request.proto $(PROTOC_PATH) ${PROTOC_ARGS} ../proto/stream/api_request.proto
protoc ${PROTOC_ARGS} ../proto/stream/backend_interfaces.proto $(PROTOC_PATH) ${PROTOC_ARGS} ../proto/stream/backend_interfaces.proto
google-api: google-api:
protoc $(PROTOC_ARGS) /googleapis/google/api/*.proto $(PROTOC_PATH) $(PROTOC_ARGS) ../proto/google/api/*.proto

2
api/js/package.json vendored
View File

@ -9,7 +9,7 @@
"typescript": "^5.1.6" "typescript": "^5.1.6"
}, },
"dependencies": { "dependencies": {
"@grpc/grpc-js": "^1.9.0", "@grpc/grpc-js": "^1.10.4",
"@mapbox/node-pre-gyp": "^1.0.11", "@mapbox/node-pre-gyp": "^1.0.11",
"@types/google-protobuf": "^3.15.6", "@types/google-protobuf": "^3.15.6",
"google-protobuf": "^3.21.2" "google-protobuf": "^3.21.2"

40
api/js/yarn.lock vendored
View File

@ -2,25 +2,29 @@
# yarn lockfile v1 # yarn lockfile v1
"@grpc/grpc-js@^1.9.0": "@grpc/grpc-js@^1.10.4":
version "1.9.0" version "1.10.4"
resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.9.0.tgz#bdb599e339adabb16aa7243e70c311f75a572867" resolved "https://registry.yarnpkg.com/@grpc/grpc-js/-/grpc-js-1.10.4.tgz#a33f743f69ed531e917c9eafb4fd8bc3e5f2e617"
integrity sha512-H8+iZh+kCE6VR/Krj6W28Y/ZlxoZ1fOzsNt77nrdE3knkbSelW1Uus192xOFCxHyeszLj8i4APQkSIXjAoOxXg== integrity sha512-MqBisuxTkYvPFnEiu+dag3xG/NBUDzSbAFAWlzfkGnQkjVZ6by3h4atbBc+Ikqup1z5BfB4BN18gKWR1YyppNw==
dependencies: dependencies:
"@grpc/proto-loader" "^0.7.0" "@grpc/proto-loader" "^0.7.10"
"@types/node" ">=12.12.47" "@js-sdsl/ordered-map" "^4.4.2"
"@grpc/proto-loader@^0.7.0": "@grpc/proto-loader@^0.7.10":
version "0.7.8" version "0.7.12"
resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.8.tgz#c050bbeae5f000a1919507f195a1b094e218036e" resolved "https://registry.yarnpkg.com/@grpc/proto-loader/-/proto-loader-0.7.12.tgz#787b58e3e3771df30b1567c057b6ab89e3a42911"
integrity sha512-GU12e2c8dmdXb7XUlOgYWZ2o2i+z9/VeACkxTA/zzAe2IjclC5PnVL0lpgjhrqfpDYHzM8B1TF6pqWegMYAzlA== integrity sha512-DCVwMxqYzpUCiDMl7hQ384FqP4T3DbNpXU8pt681l3UWCip1WUiD5JrkImUwCB9a7f2cq4CUTmi5r/xIMRPY1Q==
dependencies: dependencies:
"@types/long" "^4.0.1"
lodash.camelcase "^4.3.0" lodash.camelcase "^4.3.0"
long "^4.0.0" long "^5.0.0"
protobufjs "^7.2.4" protobufjs "^7.2.4"
yargs "^17.7.2" yargs "^17.7.2"
"@js-sdsl/ordered-map@^4.4.2":
version "4.4.2"
resolved "https://registry.yarnpkg.com/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz#9299f82874bab9e4c7f9c48d865becbfe8d6907c"
integrity sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==
"@mapbox/node-pre-gyp@^1.0.11", "@mapbox/node-pre-gyp@^1.0.5": "@mapbox/node-pre-gyp@^1.0.11", "@mapbox/node-pre-gyp@^1.0.5":
version "1.0.11" version "1.0.11"
resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz#417db42b7f5323d79e93b34a6d7a2a12c0df43fa" resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz#417db42b7f5323d79e93b34a6d7a2a12c0df43fa"
@ -94,12 +98,7 @@
resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.6.tgz#674a69493ef2c849b95eafe69167ea59079eb504" resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.6.tgz#674a69493ef2c849b95eafe69167ea59079eb504"
integrity sha512-pYVNNJ+winC4aek+lZp93sIKxnXt5qMkuKmaqS3WGuTq0Bw1ZDYNBgzG5kkdtwcv+GmYJGo3yEg6z2cKKAiEdw== integrity sha512-pYVNNJ+winC4aek+lZp93sIKxnXt5qMkuKmaqS3WGuTq0Bw1ZDYNBgzG5kkdtwcv+GmYJGo3yEg6z2cKKAiEdw==
"@types/long@^4.0.1": "@types/node@>=13.7.0":
version "4.0.2"
resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.2.tgz#b74129719fc8d11c01868010082d483b7545591a"
integrity sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==
"@types/node@>=12.12.47", "@types/node@>=13.7.0":
version "20.4.8" version "20.4.8"
resolved "https://registry.yarnpkg.com/@types/node/-/node-20.4.8.tgz#b5dda19adaa473a9bf0ab5cbd8f30ec7d43f5c85" resolved "https://registry.yarnpkg.com/@types/node/-/node-20.4.8.tgz#b5dda19adaa473a9bf0ab5cbd8f30ec7d43f5c85"
integrity sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg== integrity sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg==
@ -314,11 +313,6 @@ lodash.camelcase@^4.3.0:
resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6"
integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA== integrity sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==
long@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28"
integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==
long@^5.0.0: long@^5.0.0:
version "5.2.3" version "5.2.3"
resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1"

View File

@ -11,8 +11,11 @@ pkgs.mkShell {
pkgs.perl pkgs.perl
pkgs.cmake pkgs.cmake
pkgs.clang pkgs.clang
pkgs.postgresql # needed to build the diesel cli utility pkgs.postgresql # needed to build the diesel cli utility
pkgs.go # go api pkgs.go # go api
pkgs.nodejs # js api + ui
pkgs.yarn
pkgs.protoc-gen-grpc-web # grpc-web api
]; ];
LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib"; LIBCLANG_PATH = "${pkgs.llvmPackages.libclang.lib}/lib";
BINDGEN_EXTRA_CLANG_ARGS = "-I${pkgs.llvmPackages.libclang.lib}/lib/clang/${pkgs.llvmPackages.libclang.version}/include"; BINDGEN_EXTRA_CLANG_ARGS = "-I${pkgs.llvmPackages.libclang.lib}/lib/clang/${pkgs.llvmPackages.libclang.version}/include";

View File

@ -1258,9 +1258,9 @@
"@chirpstack/chirpstack-api-grpc-web@file:../api/grpc-web": "@chirpstack/chirpstack-api-grpc-web@file:../api/grpc-web":
version "4.7.0" version "4.7.0"
dependencies: dependencies:
"@types/google-protobuf" "^3.15.6" "@types/google-protobuf" "^3.15.12"
google-protobuf "^3.21.2" google-protobuf "^3.21.2"
grpc-web "^1.4.2" grpc-web "^1.5.0"
"@csstools/normalize.css@*": "@csstools/normalize.css@*":
version "12.0.0" version "12.0.0"
@ -2260,7 +2260,7 @@
resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.13.tgz#e6e77ea9ecf36564980a861e24e62a095988775e" resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.13.tgz#e6e77ea9ecf36564980a861e24e62a095988775e"
integrity sha512-bmrNrgKMOhM3WsafmbGmC+6dsF2Z308vLFsQ3a/bT8X8Sv5clVYpPars/UPq+sAaJP+5OoLAYgwbkS5QEJdLUQ== integrity sha512-bmrNrgKMOhM3WsafmbGmC+6dsF2Z308vLFsQ3a/bT8X8Sv5clVYpPars/UPq+sAaJP+5OoLAYgwbkS5QEJdLUQ==
"@types/google-protobuf@^3.15.6": "@types/google-protobuf@^3.15.12":
version "3.15.12" version "3.15.12"
resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.12.tgz#eb2ba0eddd65712211a2b455dc6071d665ccf49b" resolved "https://registry.yarnpkg.com/@types/google-protobuf/-/google-protobuf-3.15.12.tgz#eb2ba0eddd65712211a2b455dc6071d665ccf49b"
integrity sha512-40um9QqwHjRS92qnOaDpL7RmDK15NuZYo9HihiJRbYkMQZlWnuH8AdvbMy8/o6lgLmKbDUKa+OALCltHdbOTpQ== integrity sha512-40um9QqwHjRS92qnOaDpL7RmDK15NuZYo9HihiJRbYkMQZlWnuH8AdvbMy8/o6lgLmKbDUKa+OALCltHdbOTpQ==
@ -5455,7 +5455,7 @@ graphemer@^1.4.0:
resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6" resolved "https://registry.yarnpkg.com/graphemer/-/graphemer-1.4.0.tgz#fb2f1d55e0e3a1849aeffc90c4fa0dd53a0e66c6"
integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag== integrity sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==
grpc-web@^1.4.2: grpc-web@^1.5.0:
version "1.5.0" version "1.5.0"
resolved "https://registry.yarnpkg.com/grpc-web/-/grpc-web-1.5.0.tgz#154e4007ab59a94bf7726b87ef6c5bd8815ecf6e" resolved "https://registry.yarnpkg.com/grpc-web/-/grpc-web-1.5.0.tgz#154e4007ab59a94bf7726b87ef6c5bd8815ecf6e"
integrity sha512-y1tS3BBIoiVSzKTDF3Hm7E8hV2n7YY7pO0Uo7depfWJqKzWE+SKr0jvHNIJsJJYILQlpYShpi/DRJJMbosgDMQ== integrity sha512-y1tS3BBIoiVSzKTDF3Hm7E8hV2n7YY7pO0Uo7depfWJqKzWE+SKr0jvHNIJsJJYILQlpYShpi/DRJJMbosgDMQ==