@dcl/protocol 1.0.0-3514704273.commit-ceac819 → 1.0.0-3524279049.commit-02b9080

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.
@@ -348,11 +348,25 @@ export interface CrdtSendToRendererRequest {
348
348
  }
349
349
 
350
350
  export interface CrdtSendToResponse {
351
+ /** list of CRDT messages coming back from the renderer */
352
+ data: Uint8Array[];
353
+ }
354
+
355
+ export interface CrdtGetStateRequest {
351
356
  }
352
357
 
358
+ export interface CrdtGetStateResponse {
359
+ /** returns true if the returned state has scene-created entities */
360
+ hasEntities: boolean;
361
+ /** static entities data (root entity, camera, etc) and scene-created entities */
362
+ data: Uint8Array[];
363
+ }
364
+
365
+ /** deprecated */
353
366
  export interface CrdtMessageFromRendererRequest {
354
367
  }
355
368
 
369
+ /** deprecated */
356
370
  export interface CrdtMessageFromRendererResponse {
357
371
  data: Uint8Array[];
358
372
  }
@@ -2143,11 +2157,14 @@ export const CrdtSendToRendererRequest = {
2143
2157
  };
2144
2158
 
2145
2159
  function createBaseCrdtSendToResponse(): CrdtSendToResponse {
2146
- return {};
2160
+ return { data: [] };
2147
2161
  }
2148
2162
 
2149
2163
  export const CrdtSendToResponse = {
2150
- encode(_: CrdtSendToResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
2164
+ encode(message: CrdtSendToResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
2165
+ for (const v of message.data) {
2166
+ writer.uint32(10).bytes(v!);
2167
+ }
2151
2168
  return writer;
2152
2169
  },
2153
2170
 
@@ -2158,6 +2175,9 @@ export const CrdtSendToResponse = {
2158
2175
  while (reader.pos < end) {
2159
2176
  const tag = reader.uint32();
2160
2177
  switch (tag >>> 3) {
2178
+ case 1:
2179
+ message.data.push(reader.bytes());
2180
+ break;
2161
2181
  default:
2162
2182
  reader.skipType(tag & 7);
2163
2183
  break;
@@ -2166,17 +2186,124 @@ export const CrdtSendToResponse = {
2166
2186
  return message;
2167
2187
  },
2168
2188
 
2169
- fromJSON(_: any): CrdtSendToResponse {
2170
- return {};
2189
+ fromJSON(object: any): CrdtSendToResponse {
2190
+ return { data: Array.isArray(object?.data) ? object.data.map((e: any) => bytesFromBase64(e)) : [] };
2171
2191
  },
2172
2192
 
2173
- toJSON(_: CrdtSendToResponse): unknown {
2193
+ toJSON(message: CrdtSendToResponse): unknown {
2174
2194
  const obj: any = {};
2195
+ if (message.data) {
2196
+ obj.data = message.data.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array()));
2197
+ } else {
2198
+ obj.data = [];
2199
+ }
2175
2200
  return obj;
2176
2201
  },
2177
2202
 
2178
- fromPartial<I extends Exact<DeepPartial<CrdtSendToResponse>, I>>(_: I): CrdtSendToResponse {
2203
+ fromPartial<I extends Exact<DeepPartial<CrdtSendToResponse>, I>>(object: I): CrdtSendToResponse {
2179
2204
  const message = createBaseCrdtSendToResponse();
2205
+ message.data = object.data?.map((e) => e) || [];
2206
+ return message;
2207
+ },
2208
+ };
2209
+
2210
+ function createBaseCrdtGetStateRequest(): CrdtGetStateRequest {
2211
+ return {};
2212
+ }
2213
+
2214
+ export const CrdtGetStateRequest = {
2215
+ encode(_: CrdtGetStateRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
2216
+ return writer;
2217
+ },
2218
+
2219
+ decode(input: _m0.Reader | Uint8Array, length?: number): CrdtGetStateRequest {
2220
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2221
+ let end = length === undefined ? reader.len : reader.pos + length;
2222
+ const message = createBaseCrdtGetStateRequest();
2223
+ while (reader.pos < end) {
2224
+ const tag = reader.uint32();
2225
+ switch (tag >>> 3) {
2226
+ default:
2227
+ reader.skipType(tag & 7);
2228
+ break;
2229
+ }
2230
+ }
2231
+ return message;
2232
+ },
2233
+
2234
+ fromJSON(_: any): CrdtGetStateRequest {
2235
+ return {};
2236
+ },
2237
+
2238
+ toJSON(_: CrdtGetStateRequest): unknown {
2239
+ const obj: any = {};
2240
+ return obj;
2241
+ },
2242
+
2243
+ fromPartial<I extends Exact<DeepPartial<CrdtGetStateRequest>, I>>(_: I): CrdtGetStateRequest {
2244
+ const message = createBaseCrdtGetStateRequest();
2245
+ return message;
2246
+ },
2247
+ };
2248
+
2249
+ function createBaseCrdtGetStateResponse(): CrdtGetStateResponse {
2250
+ return { hasEntities: false, data: [] };
2251
+ }
2252
+
2253
+ export const CrdtGetStateResponse = {
2254
+ encode(message: CrdtGetStateResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {
2255
+ if (message.hasEntities === true) {
2256
+ writer.uint32(8).bool(message.hasEntities);
2257
+ }
2258
+ for (const v of message.data) {
2259
+ writer.uint32(18).bytes(v!);
2260
+ }
2261
+ return writer;
2262
+ },
2263
+
2264
+ decode(input: _m0.Reader | Uint8Array, length?: number): CrdtGetStateResponse {
2265
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2266
+ let end = length === undefined ? reader.len : reader.pos + length;
2267
+ const message = createBaseCrdtGetStateResponse();
2268
+ while (reader.pos < end) {
2269
+ const tag = reader.uint32();
2270
+ switch (tag >>> 3) {
2271
+ case 1:
2272
+ message.hasEntities = reader.bool();
2273
+ break;
2274
+ case 2:
2275
+ message.data.push(reader.bytes());
2276
+ break;
2277
+ default:
2278
+ reader.skipType(tag & 7);
2279
+ break;
2280
+ }
2281
+ }
2282
+ return message;
2283
+ },
2284
+
2285
+ fromJSON(object: any): CrdtGetStateResponse {
2286
+ return {
2287
+ hasEntities: isSet(object.hasEntities) ? Boolean(object.hasEntities) : false,
2288
+ data: Array.isArray(object?.data) ? object.data.map((e: any) => bytesFromBase64(e)) : [],
2289
+ };
2290
+ },
2291
+
2292
+ toJSON(message: CrdtGetStateResponse): unknown {
2293
+ const obj: any = {};
2294
+ message.hasEntities !== undefined && (obj.hasEntities = message.hasEntities);
2295
+ if (message.data) {
2296
+ obj.data = message.data.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array()));
2297
+ } else {
2298
+ obj.data = [];
2299
+ }
2300
+ return obj;
2301
+ },
2302
+
2303
+ fromPartial<I extends Exact<DeepPartial<CrdtGetStateResponse>, I>>(object: I): CrdtGetStateResponse {
2304
+ const message = createBaseCrdtGetStateResponse();
2305
+ message.hasEntities = object.hasEntities ?? false;
2306
+ message.data = object.data?.map((e) => e) || [];
2180
2307
  return message;
2181
2308
  },
2182
2309
  };
@@ -2273,6 +2400,7 @@ export const CrdtMessageFromRendererResponse = {
2273
2400
  },
2274
2401
  };
2275
2402
 
2403
+ /** support for legacy SDK events. */
2276
2404
  export type EngineApiServiceDefinition = typeof EngineApiServiceDefinition;
2277
2405
  export const EngineApiServiceDefinition = {
2278
2406
  name: "EngineApiService",
@@ -2302,6 +2430,10 @@ export const EngineApiServiceDefinition = {
2302
2430
  responseStream: false,
2303
2431
  options: {},
2304
2432
  },
2433
+ /**
2434
+ * send information of the CRDT messages to the renderer. It returns the CRDT changes back from the renderer
2435
+ * like raycast responses or the player's position
2436
+ */
2305
2437
  crdtSendToRenderer: {
2306
2438
  name: "CrdtSendToRenderer",
2307
2439
  requestType: CrdtSendToRendererRequest,
@@ -2310,6 +2442,19 @@ export const EngineApiServiceDefinition = {
2310
2442
  responseStream: false,
2311
2443
  options: {},
2312
2444
  },
2445
+ /**
2446
+ * retrieves the current _full_ state of the entities from the renderer. This function is used to hidrate
2447
+ * the state of the scenes when the code of the worker is stopped/resumed
2448
+ */
2449
+ crdtGetState: {
2450
+ name: "CrdtGetState",
2451
+ requestType: CrdtSendToRendererRequest,
2452
+ requestStream: false,
2453
+ responseType: CrdtSendToResponse,
2454
+ responseStream: false,
2455
+ options: {},
2456
+ },
2457
+ /** @deprecated, this response was merged into CrdtSendToResponse */
2313
2458
  crdtGetMessageFromRenderer: {
2314
2459
  name: "CrdtGetMessageFromRenderer",
2315
2460
  requestType: CrdtMessageFromRendererRequest,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dcl/protocol",
3
- "version": "1.0.0-3514704273.commit-ceac819",
3
+ "version": "1.0.0-3524279049.commit-02b9080",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -25,5 +25,5 @@
25
25
  "out-ts",
26
26
  "public"
27
27
  ],
28
- "commit": "ceac819df0cc59341d2b3b9031c5b0cd8d58d7a5"
28
+ "commit": "02b9080d9eed011f499dd8d150fcf3431dfc7c97"
29
29
  }
@@ -175,18 +175,42 @@ message EventData {
175
175
  message CrdtSendToRendererRequest {
176
176
  bytes data = 1;
177
177
  }
178
- message CrdtSendToResponse {}
179
178
 
179
+ message CrdtSendToResponse {
180
+ // list of CRDT messages coming back from the renderer
181
+ repeated bytes data = 1;
182
+ }
183
+
184
+ message CrdtGetStateRequest {}
185
+ message CrdtGetStateResponse {
186
+ // returns true if the returned state has scene-created entities
187
+ bool has_entities = 1;
188
+ // static entities data (root entity, camera, etc) and scene-created entities
189
+ repeated bytes data = 2;
190
+ }
191
+
192
+ // deprecated
180
193
  message CrdtMessageFromRendererRequest {}
194
+ // deprecated
181
195
  message CrdtMessageFromRendererResponse {
182
196
  repeated bytes data = 1;
183
197
  }
184
198
 
185
199
  service EngineApiService {
200
+ // support for legacy SDK events.
201
+
186
202
  rpc SendBatch(ManyEntityAction) returns (SendBatchResponse) {}
187
203
  rpc Subscribe(SubscribeRequest) returns (SubscribeResponse) {}
188
204
  rpc Unsubscribe(UnsubscribeRequest) returns (UnsubscribeResponse) {}
189
205
 
206
+ // send information of the CRDT messages to the renderer. It returns the CRDT changes back from the renderer
207
+ // like raycast responses or the player's position
190
208
  rpc CrdtSendToRenderer(CrdtSendToRendererRequest) returns (CrdtSendToResponse) {}
209
+
210
+ // retrieves the current _full_ state of the entities from the renderer. This function is used to hidrate
211
+ // the state of the scenes when the code of the worker is stopped/resumed
212
+ rpc CrdtGetState(CrdtSendToRendererRequest) returns (CrdtSendToResponse) {}
213
+
214
+ // @deprecated, this response was merged into CrdtSendToResponse
191
215
  rpc CrdtGetMessageFromRenderer(CrdtMessageFromRendererRequest) returns (CrdtMessageFromRendererResponse) {}
192
216
  }
@@ -13,7 +13,6 @@ enum RaycastQueryType {
13
13
  }
14
14
 
15
15
  message PBRaycast {
16
- int32 timestamp = 1;
17
16
  decentraland.common.Vector3 origin = 2;
18
17
  decentraland.common.Vector3 direction = 3;
19
18
  float max_distance = 4;