From 12be6c006aff0a5a4596fe5bd6d3347083f5b633 Mon Sep 17 00:00:00 2001 From: yousefed Date: Wed, 21 Jun 2023 18:28:53 +0200 Subject: [PATCH 1/2] fix equalDeleteSets --- src/utils/DeleteSet.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/utils/DeleteSet.js b/src/utils/DeleteSet.js index e5e964dd..6d2a43d4 100644 --- a/src/utils/DeleteSet.js +++ b/src/utils/DeleteSet.js @@ -1,18 +1,26 @@ import { + DSDecoderV1, + DSDecoderV2, + DSEncoderV1, + DSEncoderV2, + GC, + ID // eslint-disable-line + , + Item, + StructStore, Transaction, + UpdateEncoderV2, findIndexSS, getState, - splitItem, iterateStructs, - UpdateEncoderV2, - DSDecoderV1, DSEncoderV1, DSDecoderV2, DSEncoderV2, Item, GC, StructStore, Transaction, ID // eslint-disable-line + splitItem } from '../internals.js' import * as array from 'lib0/array' -import * as math from 'lib0/math' -import * as map from 'lib0/map' -import * as encoding from 'lib0/encoding' import * as decoding from 'lib0/decoding' +import * as encoding from 'lib0/encoding' +import * as map from 'lib0/map' +import * as math from 'lib0/math' export class DeleteItem { /** @@ -335,7 +343,7 @@ export const readAndApplyDeleteSet = (decoder, transaction, store) => { */ export const equalDeleteSets = (ds1, ds2) => { if (ds1.clients.size !== ds2.clients.size) return false - ds1.clients.forEach((deleteItems1, client) => { + for (const [client, deleteItems1] of ds1.clients.entries()) { const deleteItems2 = /** @type {Array} */ (ds2.clients.get(client)) if (deleteItems2 === undefined || deleteItems1.length !== deleteItems2.length) return false for (let i = 0; i < deleteItems1.length; i++) { @@ -345,6 +353,6 @@ export const equalDeleteSets = (ds1, ds2) => { return false } } - }) + } return true } From eda085936a543e54f87c0fac9dcfcc455117ba4b Mon Sep 17 00:00:00 2001 From: yousefed Date: Wed, 21 Jun 2023 18:29:40 +0200 Subject: [PATCH 2/2] keep original imports --- src/utils/DeleteSet.js | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/src/utils/DeleteSet.js b/src/utils/DeleteSet.js index 6d2a43d4..d3b3ad75 100644 --- a/src/utils/DeleteSet.js +++ b/src/utils/DeleteSet.js @@ -1,26 +1,18 @@ import { - DSDecoderV1, - DSDecoderV2, - DSEncoderV1, - DSEncoderV2, - GC, - ID // eslint-disable-line - , - Item, - StructStore, Transaction, - UpdateEncoderV2, findIndexSS, getState, + splitItem, iterateStructs, - splitItem + UpdateEncoderV2, + DSDecoderV1, DSEncoderV1, DSDecoderV2, DSEncoderV2, Item, GC, StructStore, Transaction, ID // eslint-disable-line } from '../internals.js' import * as array from 'lib0/array' -import * as decoding from 'lib0/decoding' -import * as encoding from 'lib0/encoding' -import * as map from 'lib0/map' import * as math from 'lib0/math' +import * as map from 'lib0/map' +import * as encoding from 'lib0/encoding' +import * as decoding from 'lib0/decoding' export class DeleteItem { /**