@dashevo/dapi-grpc 0.25.0-dev.1 → 0.25.0-dev.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cargo.toml +39 -0
- package/build.rs +65 -0
- package/clients/core/v0/rust/README.md +3 -0
- package/clients/core/v0/rust/core_example.rs +14 -0
- package/clients/platform/v0/nodejs/platform_pbjs.js +9682 -1470
- package/clients/platform/v0/nodejs/platform_protoc.js +6735 -1259
- package/clients/platform/v0/rust/README.md +3 -0
- package/clients/platform/v0/rust/platform_example.rs +15 -0
- package/clients/platform/v0/web/platform_pb.d.ts +709 -5
- package/clients/platform/v0/web/platform_pb.js +6735 -1259
- package/clients/platform/v0/web/platform_pb_service.d.ts +95 -0
- package/clients/platform/v0/web/platform_pb_service.js +200 -0
- package/package.json +15 -3
- package/protos/platform/v0/platform.proto +151 -7
- package/scripts/build.sh +84 -78
- package/scripts/patch-protobuf-js.sh +10 -9
- package/src/lib.rs +15 -0
package/scripts/build.sh
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env bash
|
|
2
|
+
# shellcheck disable=SC2250
|
|
2
3
|
|
|
3
4
|
CORE_PROTO_PATH="$PWD/protos/core/v0"
|
|
4
5
|
CORE_CLIENTS_PATH="$PWD/clients/core/v0"
|
|
@@ -20,25 +21,27 @@ PLATFORM_PYTHON_OUT_PATH="$PLATFORM_CLIENTS_PATH/python"
|
|
|
20
21
|
|
|
21
22
|
PROTOC_IMAGE="rvolosatovs/protoc:4.0.0"
|
|
22
23
|
|
|
24
|
+
set -ex
|
|
25
|
+
|
|
23
26
|
#################################################
|
|
24
27
|
# Generate JavaScript client for `Core` service #
|
|
25
28
|
#################################################
|
|
26
29
|
|
|
27
|
-
rm -rf "$CORE_WEB_OUT_PATH/*"
|
|
30
|
+
rm -rf "${CORE_WEB_OUT_PATH:?}/*" || true
|
|
28
31
|
|
|
29
32
|
docker run -v "$CORE_PROTO_PATH:$CORE_PROTO_PATH" \
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
-v "$CORE_WEB_OUT_PATH:$CORE_WEB_OUT_PATH" \
|
|
34
|
+
--rm \
|
|
35
|
+
"$PROTOC_IMAGE" \
|
|
36
|
+
--js_out="import_style=commonjs:$CORE_WEB_OUT_PATH" \
|
|
37
|
+
--ts_out="service=grpc-web:$CORE_WEB_OUT_PATH" \
|
|
38
|
+
-I="$CORE_PROTO_PATH" \
|
|
39
|
+
"core.proto"
|
|
37
40
|
|
|
38
41
|
# Clean node message classes
|
|
39
42
|
|
|
40
|
-
rm -rf "$CORE_CLIENTS_PATH/nodejs/*_protoc.js"
|
|
41
|
-
rm -rf "$CORE_CLIENTS_PATH/nodejs/*_pbjs.js"
|
|
43
|
+
rm -rf "$CORE_CLIENTS_PATH/nodejs/*_protoc.js" || true
|
|
44
|
+
rm -rf "$CORE_CLIENTS_PATH/nodejs/*_pbjs.js" || true
|
|
42
45
|
|
|
43
46
|
# Copy compiled modules with message classes
|
|
44
47
|
|
|
@@ -56,21 +59,21 @@ pbjs \
|
|
|
56
59
|
# Generate JavaScript client for `Platform` service #
|
|
57
60
|
#####################################################
|
|
58
61
|
|
|
59
|
-
rm -rf "$PLATFORM_WEB_OUT_PATH/*"
|
|
62
|
+
rm -rf "${PLATFORM_WEB_OUT_PATH:?}/*" || true
|
|
60
63
|
|
|
61
64
|
docker run -v "$PLATFORM_PROTO_PATH:$PLATFORM_PROTO_PATH" \
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
-v "$PLATFORM_WEB_OUT_PATH:$PLATFORM_WEB_OUT_PATH" \
|
|
66
|
+
--rm \
|
|
67
|
+
"$PROTOC_IMAGE" \
|
|
68
|
+
--js_out="import_style=commonjs:$PLATFORM_WEB_OUT_PATH" \
|
|
69
|
+
--ts_out="service=grpc-web:$PLATFORM_WEB_OUT_PATH" \
|
|
70
|
+
-I="$PLATFORM_PROTO_PATH" \
|
|
71
|
+
"platform.proto"
|
|
69
72
|
|
|
70
73
|
# Clean node message classes
|
|
71
74
|
|
|
72
|
-
rm -rf "$PLATFORM_CLIENTS_PATH/nodejs/*_protoc.js"
|
|
73
|
-
rm -rf "$PLATFORM_CLIENTS_PATH/nodejs/*_pbjs.js"
|
|
75
|
+
rm -rf "$PLATFORM_CLIENTS_PATH/nodejs/*_protoc.js" || true
|
|
76
|
+
rm -rf "$PLATFORM_CLIENTS_PATH/nodejs/*_pbjs.js" || true
|
|
74
77
|
|
|
75
78
|
# Copy compiled modules with message classes
|
|
76
79
|
|
|
@@ -87,98 +90,101 @@ pbjs \
|
|
|
87
90
|
# Generate Java client for `Core` #
|
|
88
91
|
###################################
|
|
89
92
|
|
|
90
|
-
rm -rf "$CORE_JAVA_OUT_PATH/*"
|
|
93
|
+
rm -rf "${CORE_JAVA_OUT_PATH:?}/*" || true
|
|
91
94
|
|
|
92
95
|
docker run -v "$CORE_PROTO_PATH:$CORE_PROTO_PATH" \
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
96
|
+
-v "$CORE_JAVA_OUT_PATH:$CORE_JAVA_OUT_PATH" \
|
|
97
|
+
--rm \
|
|
98
|
+
"$PROTOC_IMAGE" \
|
|
99
|
+
--plugin=protoc-gen-grpc=/usr/bin/protoc-gen-grpc-java \
|
|
100
|
+
--grpc-java_out="$CORE_JAVA_OUT_PATH" \
|
|
101
|
+
--proto_path="$CORE_PROTO_PATH" \
|
|
102
|
+
-I="$CORE_PROTO_PATH" \
|
|
103
|
+
"core.proto"
|
|
101
104
|
|
|
102
105
|
#######################################
|
|
103
106
|
# Generate Java client for `Platform` #
|
|
104
107
|
#######################################
|
|
105
108
|
|
|
106
|
-
rm -rf "$PLATFORM_JAVA_OUT_PATH/*"
|
|
109
|
+
rm -rf "${PLATFORM_JAVA_OUT_PATH:?}/*" || true
|
|
107
110
|
|
|
108
111
|
docker run -v "$PLATFORM_PROTO_PATH:$PLATFORM_PROTO_PATH" \
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
112
|
+
-v "$PLATFORM_JAVA_OUT_PATH:$PLATFORM_JAVA_OUT_PATH" \
|
|
113
|
+
--rm \
|
|
114
|
+
"$PROTOC_IMAGE" \
|
|
115
|
+
--plugin=protoc-gen-grpc=/usr/bin/protoc-gen-grpc-java \
|
|
116
|
+
--grpc-java_out="$PLATFORM_JAVA_OUT_PATH" \
|
|
117
|
+
--proto_path="$PLATFORM_PROTO_PATH" \
|
|
118
|
+
-I="$PLATFORM_PROTO_PATH" \
|
|
119
|
+
"platform.proto"
|
|
117
120
|
|
|
118
121
|
##########################################
|
|
119
122
|
# Generate Objective-C client for `Core` #
|
|
120
123
|
##########################################
|
|
121
124
|
|
|
122
|
-
rm -rf "$CORE_OBJ_C_OUT_PATH/*"
|
|
125
|
+
rm -rf "${CORE_OBJ_C_OUT_PATH:?}/*" || true
|
|
123
126
|
|
|
124
127
|
docker run -v "$CORE_PROTO_PATH:$CORE_PROTO_PATH" \
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
128
|
+
-v "$CORE_OBJ_C_OUT_PATH:$CORE_OBJ_C_OUT_PATH" \
|
|
129
|
+
--rm \
|
|
130
|
+
"$PROTOC_IMAGE" \
|
|
131
|
+
--plugin=protoc-gen-grpc=/usr/bin/grpc_objective_c_plugin \
|
|
132
|
+
--objc_out="$CORE_OBJ_C_OUT_PATH" \
|
|
133
|
+
--grpc_out="$CORE_OBJ_C_OUT_PATH" \
|
|
134
|
+
--proto_path="$CORE_PROTO_PATH" \
|
|
135
|
+
-I="$CORE_PROTO_PATH" \
|
|
136
|
+
"core.proto"
|
|
134
137
|
|
|
135
138
|
##############################################
|
|
136
139
|
# Generate Objective-C client for `Platform` #
|
|
137
140
|
##############################################
|
|
138
141
|
|
|
139
|
-
rm -rf "$PLATFORM_OBJ_C_OUT_PATH/*"
|
|
142
|
+
rm -rf "${PLATFORM_OBJ_C_OUT_PATH:?}/*" || true
|
|
140
143
|
|
|
141
144
|
docker run -v "$PLATFORM_PROTO_PATH:$PLATFORM_PROTO_PATH" \
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
145
|
+
-v "$PLATFORM_OBJ_C_OUT_PATH:$PLATFORM_OBJ_C_OUT_PATH" \
|
|
146
|
+
--rm \
|
|
147
|
+
"$PROTOC_IMAGE" \
|
|
148
|
+
--plugin=protoc-gen-grpc=/usr/bin/grpc_objective_c_plugin \
|
|
149
|
+
--objc_out="$PLATFORM_OBJ_C_OUT_PATH" \
|
|
150
|
+
--grpc_out="$PLATFORM_OBJ_C_OUT_PATH" \
|
|
151
|
+
--proto_path="$PLATFORM_PROTO_PATH" \
|
|
152
|
+
-I="$PLATFORM_PROTO_PATH" \
|
|
153
|
+
"platform.proto"
|
|
151
154
|
|
|
152
155
|
#####################################
|
|
153
156
|
# Generate Python client for `Core` #
|
|
154
157
|
#####################################
|
|
155
158
|
|
|
156
|
-
rm -rf "$CORE_PYTHON_OUT_PATH/*"
|
|
159
|
+
rm -rf "${CORE_PYTHON_OUT_PATH:?}/*" || true
|
|
157
160
|
|
|
158
161
|
docker run -v "$CORE_PROTO_PATH:$CORE_PROTO_PATH" \
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
162
|
+
-v "$CORE_PYTHON_OUT_PATH:$CORE_PYTHON_OUT_PATH" \
|
|
163
|
+
--rm \
|
|
164
|
+
"$PROTOC_IMAGE" \
|
|
165
|
+
--plugin=protoc-gen-grpc=/usr/bin/grpc_python_plugin \
|
|
166
|
+
--python_out="$CORE_PYTHON_OUT_PATH" \
|
|
167
|
+
--grpc_out="$CORE_PYTHON_OUT_PATH" \
|
|
168
|
+
--proto_path="$CORE_PROTO_PATH" \
|
|
169
|
+
-I="$CORE_PROTO_PATH" \
|
|
170
|
+
"core.proto"
|
|
168
171
|
|
|
169
172
|
#########################################
|
|
170
173
|
# Generate Python client for `Platform` #
|
|
171
174
|
#########################################
|
|
172
175
|
|
|
173
|
-
rm -rf "$PLATFORM_PYTHON_OUT_PATH/*"
|
|
176
|
+
rm -rf "${PLATFORM_PYTHON_OUT_PATH:?}/*" || true
|
|
174
177
|
|
|
175
178
|
docker run -v "$PLATFORM_PROTO_PATH:$PLATFORM_PROTO_PATH" \
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
179
|
+
-v "$PLATFORM_PYTHON_OUT_PATH:$PLATFORM_PYTHON_OUT_PATH" \
|
|
180
|
+
--rm \
|
|
181
|
+
"$PROTOC_IMAGE" \
|
|
182
|
+
--plugin=protoc-gen-grpc=/usr/bin/grpc_python_plugin \
|
|
183
|
+
--python_out="$PLATFORM_PYTHON_OUT_PATH" \
|
|
184
|
+
--grpc_out="$PLATFORM_PYTHON_OUT_PATH" \
|
|
185
|
+
--proto_path="$PLATFORM_PROTO_PATH" \
|
|
186
|
+
-I="$PLATFORM_PROTO_PATH" \
|
|
187
|
+
"platform.proto"
|
|
188
|
+
|
|
189
|
+
# Patch generated protobuf files
|
|
190
|
+
exec "${PWD}/scripts/patch-protobuf-js.sh"
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
#!/bin/bash
|
|
2
|
+
# shellcheck disable=SC2250
|
|
3
|
+
set -e
|
|
2
4
|
|
|
3
5
|
files=$(find "$PWD/clients/core/v0/web" "$PWD/clients/core/v0/nodejs" "$PWD/clients/platform/v0/web" "$PWD/clients/platform/v0/nodejs" -name "*_pb.js" -o -name "*_protoc.js")
|
|
4
6
|
OS=$(uname)
|
|
5
7
|
|
|
6
8
|
function replace_in_file() {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
9
|
+
if [[ "$OS" = 'Darwin' ]]; then
|
|
10
|
+
# for MacOS
|
|
11
|
+
sed -i '' -e "$1" "$2"
|
|
12
|
+
else
|
|
13
|
+
# for Linux and Windows
|
|
14
|
+
sed -i'' -e "$1" "$2"
|
|
15
|
+
fi
|
|
14
16
|
}
|
|
15
17
|
|
|
16
18
|
# Loop over the files
|
|
17
|
-
for file in $files
|
|
18
|
-
do
|
|
19
|
+
for file in $files; do
|
|
19
20
|
|
|
20
21
|
replace_in_file 's/var global = Function('\''return this'\'')();/const proto = {};/g' "$file"
|
|
21
22
|
if grep -qrE "[^a-zA-Z]Function\(" "$file"; then
|
package/src/lib.rs
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
pub use prost::Message;
|
|
2
|
+
|
|
3
|
+
pub mod core {
|
|
4
|
+
#[cfg(feature = "core_v0")]
|
|
5
|
+
pub mod v0 {
|
|
6
|
+
include!("core/proto/org.dash.platform.dapi.v0.rs");
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
pub mod platform {
|
|
11
|
+
#[cfg(feature = "platform_v0")]
|
|
12
|
+
pub mod v0 {
|
|
13
|
+
include!("platform/proto/org.dash.platform.dapi.v0.rs");
|
|
14
|
+
}
|
|
15
|
+
}
|