@lionweb/delta-protocol-client 0.7.0-beta.25 → 0.7.0-beta.27
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/dist/client.d.ts +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +6 -6
- package/dist/client.js.map +1 -1
- package/package.json +7 -7
- package/src/client.ts +4 -5
package/dist/client.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare class LionWebClient {
|
|
|
22
22
|
model: INodeBase[];
|
|
23
23
|
readonly idMapping: IdMapping;
|
|
24
24
|
readonly createNode: NodeBaseFactory;
|
|
25
|
-
readonly
|
|
25
|
+
readonly deserialize: Deserializer<INodeBase[]>;
|
|
26
26
|
private readonly effectiveReceiveDelta;
|
|
27
27
|
private readonly lowLevelClient;
|
|
28
28
|
private _participationId?;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAiBA,OAAO,EAIH,aAAa,EACb,YAAY,EACZ,SAAS,EACT,aAAa,EACb,SAAS,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
//
|
|
15
15
|
// SPDX-FileCopyrightText: 2025 TRUMPF Laser SE and other contributors
|
|
16
16
|
// SPDX-License-Identifier: Apache-2.0
|
|
17
|
-
import { allNodesFrom, applyDelta, combinedFactoryFor, IdMapping,
|
|
17
|
+
import { allNodesFrom, applyDelta, combinedFactoryFor, IdMapping, nodeBaseDeserializerWithIdMapping, PartitionAddedDelta, PartitionDeletedDelta, serializeDelta } from "@lionweb/class-core";
|
|
18
18
|
import { Concept } from "@lionweb/core";
|
|
19
19
|
import { byIdMap } from "@lionweb/ts-utils";
|
|
20
20
|
import { ansi, ClientAppliedEvent, ClientDidNotApplyEventFromOwnCommand, ClientHadProblem, ClientReceivedMessage, ClientSentMessage, DeltaOccurredOnClient, deltaToCommandTranslator, eventToDeltaTranslator, isEvent, isQueryResponse, semanticLoggerFunctionFrom } from "@lionweb/delta-protocol-common";
|
|
@@ -28,12 +28,12 @@ export class LionWebClient {
|
|
|
28
28
|
return this._participationId;
|
|
29
29
|
}
|
|
30
30
|
// TODO could also get this from the priority queue (which would need to be adapted for that)
|
|
31
|
-
constructor(clientId, model, idMapping, createNode,
|
|
31
|
+
constructor(clientId, model, idMapping, createNode, deserialize, effectiveReceiveDelta, lowLevelClient) {
|
|
32
32
|
this.clientId = clientId;
|
|
33
33
|
this.model = model;
|
|
34
34
|
this.idMapping = idMapping;
|
|
35
35
|
this.createNode = createNode;
|
|
36
|
-
this.
|
|
36
|
+
this.deserialize = deserialize;
|
|
37
37
|
this.effectiveReceiveDelta = effectiveReceiveDelta;
|
|
38
38
|
this.lowLevelClient = lowLevelClient;
|
|
39
39
|
this.signedOff = false;
|
|
@@ -80,8 +80,8 @@ export class LionWebClient {
|
|
|
80
80
|
const { roots: model, idMapping } = serializationChunk === undefined
|
|
81
81
|
? { roots: [], idMapping: new IdMapping({}) }
|
|
82
82
|
: nodeBaseDeserializerWithIdMapping(languageBases, effectiveReceiveDelta)(serializationChunk);
|
|
83
|
-
const
|
|
84
|
-
const eventAsDelta = eventToDeltaTranslator(languageBases,
|
|
83
|
+
const deserializerWithIdMapping = nodeBaseDeserializerWithIdMapping(languageBases, effectiveReceiveDelta);
|
|
84
|
+
const eventAsDelta = eventToDeltaTranslator(languageBases, deserializerWithIdMapping);
|
|
85
85
|
loading = false;
|
|
86
86
|
const processEvent = (event) => {
|
|
87
87
|
lionWebClient.lastReceivedSequenceNumber = event.sequenceNumber;
|
|
@@ -128,7 +128,7 @@ export class LionWebClient {
|
|
|
128
128
|
}
|
|
129
129
|
};
|
|
130
130
|
const lowLevelClient = await lowLevelClientInstantiator({ url, clientId, receiveMessageOnClient /* no logging parameter */ });
|
|
131
|
-
const lionWebClient = new LionWebClient(clientId, model, idMapping, combinedFactoryFor(languageBases, effectiveReceiveDelta),
|
|
131
|
+
const lionWebClient = new LionWebClient(clientId, model, idMapping, combinedFactoryFor(languageBases, effectiveReceiveDelta), (serializationChunk) => deserializerWithIdMapping(serializationChunk).roots, effectiveReceiveDelta, lowLevelClient); // Note: we need this `lionWebClient` constant non-inlined for write-access to lastReceivedSequenceNumber and queryResolveById.
|
|
132
132
|
return lionWebClient;
|
|
133
133
|
}
|
|
134
134
|
/**
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,0CAA0C;AAC1C,EAAE;AACF,iDAAiD;AACjD,EAAE;AACF,sEAAsE;AACtE,oEAAoE;AACpE,2EAA2E;AAC3E,sEAAsE;AACtE,iCAAiC;AACjC,EAAE;AACF,sEAAsE;AACtE,sCAAsC;AAEtC,OAAO,EACH,YAAY,EACZ,UAAU,EACV,kBAAkB,EAGlB,SAAS,EAGT,
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lionweb/delta-protocol-client",
|
|
3
|
-
"version": "0.7.0-beta.
|
|
3
|
+
"version": "0.7.0-beta.27",
|
|
4
4
|
"description": "Part of the implementation of a delta protocol client not tied to a specific message transport protocol",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -27,11 +27,11 @@
|
|
|
27
27
|
"release": "npm publish"
|
|
28
28
|
},
|
|
29
29
|
"dependencies": {
|
|
30
|
-
"@lionweb/class-core": "0.7.0-beta.
|
|
31
|
-
"@lionweb/core": "0.7.0-beta.
|
|
32
|
-
"@lionweb/delta-protocol-common": "0.7.0-beta.
|
|
33
|
-
"@lionweb/delta-protocol-client": "0.7.0-beta.
|
|
34
|
-
"@lionweb/json": "0.7.0-beta.
|
|
35
|
-
"@lionweb/ts-utils": "0.7.0-beta.
|
|
30
|
+
"@lionweb/class-core": "0.7.0-beta.27",
|
|
31
|
+
"@lionweb/core": "0.7.0-beta.27",
|
|
32
|
+
"@lionweb/delta-protocol-common": "0.7.0-beta.27",
|
|
33
|
+
"@lionweb/delta-protocol-client": "0.7.0-beta.27",
|
|
34
|
+
"@lionweb/json": "0.7.0-beta.27",
|
|
35
|
+
"@lionweb/ts-utils": "0.7.0-beta.27"
|
|
36
36
|
}
|
|
37
37
|
}
|
package/src/client.ts
CHANGED
|
@@ -24,7 +24,6 @@ import {
|
|
|
24
24
|
IdMapping,
|
|
25
25
|
ILanguageBase,
|
|
26
26
|
INodeBase,
|
|
27
|
-
nodeBaseDeserializer,
|
|
28
27
|
nodeBaseDeserializerWithIdMapping,
|
|
29
28
|
NodeBaseFactory,
|
|
30
29
|
PartitionAddedDelta,
|
|
@@ -108,7 +107,7 @@ export class LionWebClient {
|
|
|
108
107
|
public model: INodeBase[],
|
|
109
108
|
public readonly idMapping: IdMapping,
|
|
110
109
|
public readonly createNode: NodeBaseFactory,
|
|
111
|
-
public readonly
|
|
110
|
+
public readonly deserialize: Deserializer<INodeBase[]>,
|
|
112
111
|
private readonly effectiveReceiveDelta: DeltaReceiver,
|
|
113
112
|
private readonly lowLevelClient: LowLevelClient<Command | QueryMessage>
|
|
114
113
|
) {}
|
|
@@ -148,8 +147,8 @@ export class LionWebClient {
|
|
|
148
147
|
const { roots: model, idMapping } = serializationChunk === undefined
|
|
149
148
|
? { roots: [], idMapping: new IdMapping({}) }
|
|
150
149
|
: nodeBaseDeserializerWithIdMapping(languageBases, effectiveReceiveDelta)(serializationChunk)
|
|
151
|
-
const
|
|
152
|
-
const eventAsDelta = eventToDeltaTranslator(languageBases,
|
|
150
|
+
const deserializerWithIdMapping = nodeBaseDeserializerWithIdMapping(languageBases, effectiveReceiveDelta)
|
|
151
|
+
const eventAsDelta = eventToDeltaTranslator(languageBases, deserializerWithIdMapping)
|
|
153
152
|
loading = false
|
|
154
153
|
|
|
155
154
|
const processEvent = (event: Event) => {
|
|
@@ -204,7 +203,7 @@ export class LionWebClient {
|
|
|
204
203
|
model,
|
|
205
204
|
idMapping,
|
|
206
205
|
combinedFactoryFor(languageBases, effectiveReceiveDelta),
|
|
207
|
-
|
|
206
|
+
(serializationChunk) => deserializerWithIdMapping(serializationChunk).roots,
|
|
208
207
|
effectiveReceiveDelta,
|
|
209
208
|
lowLevelClient
|
|
210
209
|
) // Note: we need this `lionWebClient` constant non-inlined for write-access to lastReceivedSequenceNumber and queryResolveById.
|