@manuscripts/track-changes-plugin 0.0.3 → 0.0.4

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/index.es.js CHANGED
@@ -1265,16 +1265,10 @@ function trackTransaction(tr, oldState, newTr, userID) {
1265
1265
  // } else if (step instanceof AddMarkStep) {
1266
1266
  // } else if (step instanceof RemoveMarkStep) {
1267
1267
  }
1268
- // TODO: here we could check whether adjacent inserts & deletes cancel each other out.
1269
- // However, this should not be done by diffing and only matching node or char by char instead since
1270
- // it's A easier and B more intuitive to user.
1271
- const { meta } = tr;
1272
- // This is quite non-optimal in some sense but to ensure no information is lost
1273
- // we have to re-add all the old meta keys, such as inputType or uiEvent.
1274
- // This should prevent bugs incase other plugins/widgets rely upon them existing (and they
1275
- // are not able to process the transactions before track-changes).
1276
- // TODO: will this cause race-condition if a meta causes another appendTransaction to fire
1277
- Object.keys(meta).forEach((key) => newTr.setMeta(key, tr.getMeta(key)));
1268
+ // The old meta keys are not copied to the new transaction since this will cause race-conditions
1269
+ // when a single meta-field is thought to be processed. MAYBE only the generic meta keys, such as
1270
+ // inputType or uiEvent, could be copied over but it remains to be seen if it's necessary.
1271
+ // Object.keys(meta).forEach((key) => newTr.setMeta(key, tr.getMeta(key)))
1278
1272
  });
1279
1273
  // This is kinda hacky solution at the moment to maintain NodeSelections over transactions
1280
1274
  // These are required by at least cross-references that need it to activate the selector pop-up
package/dist/index.js CHANGED
@@ -1273,16 +1273,10 @@ function trackTransaction(tr, oldState, newTr, userID) {
1273
1273
  // } else if (step instanceof AddMarkStep) {
1274
1274
  // } else if (step instanceof RemoveMarkStep) {
1275
1275
  }
1276
- // TODO: here we could check whether adjacent inserts & deletes cancel each other out.
1277
- // However, this should not be done by diffing and only matching node or char by char instead since
1278
- // it's A easier and B more intuitive to user.
1279
- const { meta } = tr;
1280
- // This is quite non-optimal in some sense but to ensure no information is lost
1281
- // we have to re-add all the old meta keys, such as inputType or uiEvent.
1282
- // This should prevent bugs incase other plugins/widgets rely upon them existing (and they
1283
- // are not able to process the transactions before track-changes).
1284
- // TODO: will this cause race-condition if a meta causes another appendTransaction to fire
1285
- Object.keys(meta).forEach((key) => newTr.setMeta(key, tr.getMeta(key)));
1276
+ // The old meta keys are not copied to the new transaction since this will cause race-conditions
1277
+ // when a single meta-field is thought to be processed. MAYBE only the generic meta keys, such as
1278
+ // inputType or uiEvent, could be copied over but it remains to be seen if it's necessary.
1279
+ // Object.keys(meta).forEach((key) => newTr.setMeta(key, tr.getMeta(key)))
1286
1280
  });
1287
1281
  // This is kinda hacky solution at the moment to maintain NodeSelections over transactions
1288
1282
  // These are required by at least cross-references that need it to activate the selector pop-up
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@manuscripts/track-changes-plugin",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "author": "Atypon Systems LLC",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/Atypon-OpenSource/manuscripts-quarterback/tree/main/quarterback-packages/track-changes-plugin",